广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >一文搞懂C#实现读写文本文件中的数据
  • 799
分享到

一文搞懂C#实现读写文本文件中的数据

2024-04-02 19:04:59 799人浏览 安东尼
摘要

【1】首先我们定义一段假数据,这里以一个string为例字   static void Main(string[] args) { string data = "我的数据要开始

【1】首先我们定义一段假数据,这里以一个string为例字


  static void Main(string[] args)
{
string data = "我的数据要开始存入文件了,我好开心啊!覆盖了吗?好像覆盖了,真的覆盖了"; 
}

【2】接着我们将这个数据写入.txt文件
代码如下:


/// <summary>
        /// 保存数据data到文件的处理过程;
        /// </summary>
        /// <param name="data"></param>


        public static String SavaProcess(string data) {
            System.DateTime currentTime = System.DateTime.Now;
            //获取当前日期的前一天转换成ToFileTime
            string strYMD = currentTime.ADDDays(-1).ToString("yyyyMMdd");
            //按照日期建立一个文件名
            string FileName = "MyFileSend" + strYMD + ".txt";
            //设置目录
            string CurDir = System.AppDomain.CurrentDomain.BaseDirectory + @"SaveDir";
            //判断路径是否存在
            if(!System.io.Directory.Exists(CurDir)){
                System.IO.Directory.CreateDirectory(CurDir);
            }
            //不存在就创建
            String FilePath = CurDir + FileName;
            //文件覆盖方式添加内容
            System.IO.StreamWriter file = new System.IO.StreamWriter(FilePath,false);
            //保存数据到文件
            file.Write(data);
            //关闭文件
            file.Close();
            //释放对象
            file.Dispose();
            return FilePath;
        }

结果是返回一个文件路径,根据具体场合可返回,也可不返回;我们来测试一下文件是否生成成功,我们在Main函数中调用这个方法,代码如下:


static void Main(string[] args)
        {
            string data = "我的数据要开始存入文件了,我好开心啊!覆盖了吗?好像覆盖了,真的覆盖了";
            String filePath = SavaProcess(data);  

     Console.WriteLine(filePath);      
        }

运行结果如下:

很显然,在相关目录下,生成了想对应的文件;我们在看看cmd中打印出了如下路径:

  D:\VSProject\SavaProcessToFile\SavaProcessToFile\bin\Debug\SaveDirMyFileSend20170628.txt

生成的这个路径对我们接下来的工作很重要,读取文本数据的时候需要用到;

【3】读取.txt文件数据

我们再定义一个读取数据的方法:


  /// <summary>
        /// 获取文件中的数据
        /// </summary>
        /// <param name="args"></param>


        public static string fileToString( String filePath ){
            string strData = "";
            try
            {
                string line;
                // 创建一个 StreamReader 的实例来读取文件 ,using 语句也能关闭 StreamReader
                using (System.IO.StreamReader sr = new System.IO.StreamReader(filePath))
                {                  
                    // 从文件读取并显示行,直到文件的末尾
                    while ((line = sr.ReadLine()) != null)
                    {
                        //Console.WriteLine(line);
                        strData = line;
                    }                    
                }              
            }
            catch (Exception e)
            {
                // 向用户显示出错消息
                Console.WriteLine("The file could not be read:");
                Console.WriteLine(e.Message);
            }
            return strData;
        }

看见没?我们这边传入的参数就是生成文件的那个路径,注意,参数的类型是String表示文本的,而不是string表示字符串的,因为我再生成路径的时候就是用的String,所以这里对应起来;

接下来,我们来测试一下,看我们有没有读取文件成功,看cmd中是否会出现我们最初写入的那个字符串?我们在Main函数中调用方法,代码如下:


static void Main(string[] args)
        {
            string data = "我的数据要开始存入文件了,我好开心啊!覆盖了吗?好像覆盖了,真的覆盖了";
            String filePath = SavaProcess(data);
            string strData = fileToString(filePath);
            Console.WriteLine(strData);         
        }

运行结果如下:

结果出现了最开始存的那个字符串;

【4】写入和读取过程完整代码


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace SavaProcessToFile
{
class Program
{
/// <summary>
/// 保存数据data到文件的处理过程;
/// </summary>
/// <param name="data"></param>
public static String SavaProcess(string data) {
System.DateTime currentTime = System.DateTime.Now;
//获取当前日期的前一天转换成ToFileTime
string strYMD = currentTime.AddDays(-1).ToString("yyyyMMdd");
//按照日期建立一个文件名
string FileName = "MyFileSend" + strYMD + ".txt";
//设置目录
string CurDir = System.AppDomain.CurrentDomain.BaseDirectory + @"SaveDir";
//判断路径是否存在
if(!System.IO.Directory.Exists(CurDir)){
System.IO.Directory.CreateDirectory(CurDir);
}
//不存在就创建
String FilePath = CurDir + FileName;
//文件覆盖方式添加内容
System.IO.StreamWriter file = new System.IO.StreamWriter(FilePath,false);
//保存数据到文件
file.Write(data);
//关闭文件
file.Close();
//释放对象
file.Dispose();

return FilePath;
}

/// <summary>
/// 获取文件中的数据
/// </summary>
/// <param name="args"></param>
public static string fileToString(String filePath){
string strData = "";
try
{
string line;
// 创建一个 StreamReader 的实例来读取文件 ,using 语句也能关闭 StreamReader
using (System.IO.StreamReader sr = new System.IO.StreamReader(filePath))
{ 
// 从文件读取并显示行,直到文件的末尾 
while ((line = sr.ReadLine()) != null)
{
//Console.WriteLine(line);
strData = line;
} 
} 
}
catch (Exception e)
{
// 向用户显示出错消息
Console.WriteLine("The file could not be read:");
Console.WriteLine(e.Message);
}
return strData;
}

static void Main(string[] args)
{
string data = "我的数据要开始存入文件了,我好开心啊!覆盖了吗?好像覆盖了,真的覆盖了";
String filePath = SavaProcess(data);
string strData = fileToString(filePath);
Console.WriteLine(strData); 
}
}
}

以上就是C#实现读写文本文件中的数据的详细内容,更多关于C#读写文本文件数据的资料请关注编程网其它相关文章!

--结束END--

本文标题: 一文搞懂C#实现读写文本文件中的数据

本文链接: https://www.lsjlt.com/news/128571.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 一文搞懂C#实现读写文本文件中的数据
    【1】首先我们定义一段假数据,这里以一个string为例字   static void Main(string[] args) { string data = "我的数据要开始...
    99+
    2022-11-12
  • 一文搞懂Go语言中文件的读写与创建
    目录1. 文件的打开与关闭1.1 os.open1.2 os.OpenFile() 指定模式打开文件2. 文件的读取2.1 打开文件的方式读取文件中的数据2.2 使用 bufio 整...
    99+
    2022-11-13
  • 一文搞懂C语言中的文件操作
    目录一、文件操作1、 为什要使用文件操作2、什么是文件3、文件操作的使用一、文件操作 1、 为什要使用文件操作 在c语言中我们完成一个程序后,他并不会对我们的数据进行保存,就像我上一...
    99+
    2022-11-21
    C语言文件操作 C语言 文件
  • 一文搞懂怎么在python中读取和写入CSV文件
    本篇文章给大家带来了关于Python的相关知识,其中主要整理了读取和写入CSV文件的相关问题,CSV(Comma-Separated Values)即逗号分隔值,一种以逗号分隔按行存储的文本文件,所有的值都表现为字符串类型,下面一起来看一下...
    99+
    2022-07-15
    python
  • 一文搞懂c++中的std::move函数
    目录前言左值和右值左值引用右值引用std::move函数remove_reference源码剖析std::forward源码剖析std::move()源码剖析小结std::move使...
    99+
    2022-11-13
  • 一文搞懂MyBatis多数据源Starter实现
    目录前言正文一. 实现思路二. 自动装配实现三. 配置加载四. 数据源初始化五. MyBatis初始化六. Springboot数据源原生自动装配抑制总结前言 本文将实现一个MyBa...
    99+
    2023-05-16
    MyBatis多数据源Starter MyBatis多数据源 多数据源Starter
  • 一文读懂C++中的函数对象
    这篇文章给大家介绍一文读懂C++中的函数对象,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。如果一个类将()运算符重载为成员函数,这个类就称为函数对象类,这个类的对象就是函数对象。函数对象是一个对象,但是使用的形式看起来...
    99+
    2023-06-06
  • C#读写文本文件(.txt)的方法实例
    读取txt文件 如果你要读取的文件内容不是很多,可以使用 File.ReadAllText(filePath) 或指定编码方式 File.ReadAllText(FilePath...
    99+
    2022-11-12
  • C++文件的数据写入和文件的数据读取怎么实现
    这篇文章主要介绍了C++文件的数据写入和文件的数据读取怎么实现的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇C++文件的数据写入和文件的数据读取怎么实现文章都会有所收获,下面我们一起来看看吧。一:没有数据,准备...
    99+
    2023-07-02
  • 一文搞懂Java中对象池的实现
    目录1. 什么是对象池2. 为什么需要对象池3. 对象池的实现4. 开源的对象池工具5. JedisPool 对象池实现分析6. 对象池总结最近在分析一个应用中的某个接口的耗时情况时...
    99+
    2022-11-13
  • 一文搞懂JavaScript中bind,apply,call的实现
    目录bind、call和apply的用法bindcall&apply实现bind实现call和apply总结bind、call和apply都是Function原型链上面的方法...
    99+
    2022-11-13
  • C++文件的数据写入和文件的数据读取的方法实现
    目录一:没有数据,准备数据,写入文件二:读文件操作一:没有数据,准备数据,写入文件 1.main.cpp #include<iostream> using namespa...
    99+
    2022-11-13
  • C#CSV文件读写的实现
    目录为什么要用csv文件一、DataTable数据写入CSV文件二、读取CSV文件到DataTable三、修改文件名称四、CSV文件的数据写入CSV是一种通用的、相对简单的文件格式,...
    99+
    2023-03-03
    C# CSV文件读写 C# CSV 读写
  • VB.NET中怎么实现读写文本文件操作
    VB.NET中怎么实现读写文本文件操作,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。VB.NET读写文本文件为了把text保存到文件,创建一个基于FileStream的Stre...
    99+
    2023-06-17
  • C/C++Qt基本文件读写的基本使用(2种实现)
    目录QT基本文件读写QTextStream 实现流读写文件的读写是很多应用程序具有的功能,甚至某些应用程序就是围绕着某一种格式文件的处 理而开发的,所以文件读写是应用程序开发的一个基...
    99+
    2022-11-12
  • 教你用Java GUI实现文本文件的读写
    目录一、实验题目二、分析三、实现四、全部代码一、实验题目 二、分析 实验要求为: 实现一个界面,界面中包含一个文本显示区和两个按钮(存档和读档) 读档按钮作用是打...
    99+
    2022-11-12
  • C语言中的文件读写fseek 函数
    目录一.fseek 函数简介二.fseek 函数实战一.fseek 函数简介 fseek 函数用来移动文件流的读写位置;就好比播放器,可以直接拖拽到精彩的时间点一样,fseek 函数...
    99+
    2022-11-12
  • C++实现ini文件读写的示例代码
    目录介绍1.使用INIReader.h头文件1.INIReader.h2.test.ini3.INIReaderTest.cpp2.使用ini.h头文件1.ini.h2.config...
    99+
    2022-11-13
  • C#实现CSV文件读写的示例详解
    目录CSV文件标准文件示例RFC 4180简化标准读写CSV文件使用CsvHelper使用自定义方法总结项目中经常遇到CSV文件的读写需求,其中的难点主要是CSV文件的解析。本文会介...
    99+
    2023-05-19
    C#读写CSV文件方法 C#读写CSV文件 C#读写CSV C# CSV
  • C#实现读写CSV文件的方法详解
    目录CSV文件标准文件示例RFC 4180简化标准读写CSV文件使用CsvHelper使用自定义方法总结项目中经常遇到CSV文件的读写需求,其中的难点主要是CSV文件的解析。本文会介...
    99+
    2022-11-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作