C# 读取文本文件

article/2025/3/1 21:31:06

1.准备工作

  • 引入命名空间System.IO,因为这里面包含了我们要调用的读取文件的类StreamReader

2.举例

(1)待读取文件格式
在这里插入图片描述
(2)思路

  • 实例化一个SteamReader,用完后最后记得关闭它
  • 创建四个一维数组用来存放数据
  • 使用SteamReader.ReadLine函数逐行读取数据
  • 使用Split函数将其分割,将分割后的数组逐个对应存入刚才创建数组的中。
  • 打印验证

(3)代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;    //包含允许读写文件和数据流的类型以及提供基本文件和目录支持的类型。namespace CA_ReadText
{class Program{static void Main(string[] args){ReadFile();Console.ReadKey();}static void ReadFile(){string fileName = @"D:\C#保存位置\Winforms\KaoyanReview\CA_ReadText\bin\Debug\data.txt";var reader = new StreamReader(fileName);string buf = reader.ReadLine(); //读取第一行,不需要,所以直接扔掉//存储数据int[] num = new int[4];string[] siteName = new string[4];double[] B = new double[4];double[] L = new double[4];//逐行读取并存储到数组中for (int i = 0; i < 4; i++){buf = reader.ReadLine();var arrLine = buf.Split(' ');num[i] = int.Parse(arrLine[0]);siteName[i] = arrLine[1];B[i] = Convert.ToDouble(arrLine[2]);    //Method 1L[i] = double.Parse(arrLine[3]);    //Method 2Console.WriteLine("{0},{1},{2},{3}", num[i], siteName[i], B[i], L[i]);//写出}reader.Close();}}
}

3.进阶

我不知道大家有没有发现上面的情况的不足之处,接下来我将自己觉得不足的地方跟大家分享并进行改正。

(1)问题

  • 逐行读取写死了,也就是如果不是四行而是更多行,我们岂不是读不到4行之后的内容了
  • 与上个问题对应的就是存储数据那四个数组的格式和大小写死了。

(2)我的思路
针对问题一,我们就使用另外一种循环使得它能够自动识别并读取到最后一行内容为止。针对问题二,我们可以创建一个结构体,使用List来存储,List可以动态的添加后删除数据。
(3)上代码

  • 结构体
struct LineStruct{public int num;public string siteName;public double B;public double L;}
  • 读取函数
static void ReadFilePro(){string fileName = @"D:\C#保存位置\Winforms\KaoyanReview\CA_ReadText\bin\Debug\data.txt";List<LineStruct> list = new List<LineStruct>();var reader = new StreamReader(fileName);string buf = reader.ReadLine();//第一行舍弃while (!reader.EndOfStream)//读取到最后{buf = reader.ReadLine();var line = buf.Split(' ');var lineStruct = new LineStruct();for (int i = 0; i < line.Length; i++){switch (i){case 0:lineStruct.num = int.Parse(line[i]);break;case 1:lineStruct.siteName = line[i];break;case 2:lineStruct.B = double.Parse(line[i]);break;case 3:lineStruct.L = double.Parse(line[i]);break;}}list.Add(lineStruct);}foreach (var item in list){Console.WriteLine("{0} {1} {2} {3}", item.num, item.siteName,item.B,item.L);}reader.Close();}

总结

当然了,我写的仍然有很多不足之处,还望各位多加指正。


http://chatgpt.dhexx.cn/article/yGvq5Fei.shtml

相关文章

【Python入门教程】第69篇 写入文本文件

本篇我们介绍如何将内容写入文本文件。 快速参考 以下代码演示了如何将一个字符串写入文本文件&#xff1a; with open(readme.txt, w) as f:f.write(readme)写入文本文件的步骤 在 Python 中写入文本文件的步骤如下&#xff1a; 首先&#xff0c;利用 open() 函数以写入或…

怎么把文本改为计算机程序,如何将文本文档转换为dat文件

通过 我的电脑&#xff0c;工具&#xff0c;文件夹选项&#xff0c;查看选项卡&#xff0c;取消选中“隐藏已知文件类型的扩展名” 18943626166 输入记事本程序(必须从头开始)&#xff0c;将文档粘贴到其中&#xff0c;并在保存时将txt中的“文件名”保存到vbs. 这很容易. 房东…

文本文档怎么转换为html文件,win10系统下如何将文本文档转换为网页

因为工作需求&#xff0c;一位windows10正式版系统用户就希望能够将文本文档转换为网页&#xff0c;可是操作了很久都没有成功&#xff0c;感觉非常烦恼。这该怎么办呢&#xff1f;接下来&#xff0c;就随系统城小编一起看看具体方法吧&#xff01; 具体如下&#xff1a; 1、首…

计算机创建不了文本文档,电脑系统没有新建文本文档怎么解决?

文本文档是电脑最初的文件记录方式&#xff0c;直到后来office软件发明之后&#xff0c;才渐渐退出舞台&#xff0c;但是也不是说文档文件就没有用了&#xff0c;有的时候从网上下载了txt文件&#xff0c;电脑不识别&#xff0c;电脑上缺少txt文档文件的识别程序&#xff0c;连…

python创建一个文本文件_利用python如何实现创建一个文本文件

利用python如何实现创建一个文本文件 发布时间&#xff1a;2020-11-06 15:52:26 来源&#xff1a;亿速云 阅读&#xff1a;77 作者&#xff1a;Leah 本篇文章给大家分享的是有关利用python如何实现创建一个文本文件&#xff0c;小编觉得挺实用的&#xff0c;因此分享给大家学习…

文本文档html乱码,文本文档乱码怎么办?电脑文本文档乱码解决方法

有时候我们在网上下载了一些文档,打开之后发现全是乱码,很多用户顿时不知道怎么办,其实文档打开乱码可能是系统没有这个文字也有可能是打开的软件有问题,那么当你有遇到文本文档乱码该怎么办呢?不懂的朋友看看小编整理的解决方法吧! 方法/步骤: 1、下载一篇文档,不管用…

用文本文档制作bat文件

1.新建文本文档 2.输入命令 3.点击文件-->另存为 4.选择保存类型为“所有文件” 5.将文件名改为“XX.bat”并点击保存 6.大功告成

html是什么文本文件,纯文本文件是什么意思

什么是文本文件和文本文档&#xff0c;它们有什么不同吗&#xff1f; 请讲的简单易懂些。 另外&#xff0c;请例举些他们的相同这处和不同之处&#xff0c;怎么用最一、主体不同 文本文件&#xff1a;是一种计算机文件&#xff0c;是一种典型的顺序文件&#xff0c;其文件的逻辑…

文本文档变成java文件_java 程序文本文档形式的编写,编译,及运行

一.程序的编写 1.在指定路径下新建文本文档 如在f盘新建了一个名为demo的文件夹&#xff0c;在该文件夹路径下新建了一个文本文档 2.打开文本文档&#xff0c;进行编写&#xff0c;例如&#xff1a; 3.保存 选择文件另存为&#xff0c;文件名称为你创建的类的名称且后缀为.java…

文本文档如何运行c语言代码,文本文档代码写好了怎么运行

怎样运行自己编写的html文本? 学习网页设计。用记事本编写好html文本后,怎么在浏览器上运行啊? html文件可以直接在txt文档里面编写然后修改文件后缀,直接双击打开; 也可以使用专门的编写工具(dreamweaver)编写。 在文本编辑器中输入html代码后如何在浏览器中执行h 在电脑…

简单的整人技巧

整蛊第一招 移花接木 趁对方不在&#xff0c;简单几步就能让TA电脑里的图标全部固定&#xff0c;等TA回来就会发现无论怎么样都打不开任何应用 具体操作方法 ▼ ① 打开电脑微信&#xff0c;并最小化窗口&#xff1b; ② 键盘按下CtrlAltA截取屏幕&#xff0c;点击保存&a…

python-转义字符及其使用

1、什么是转义字符 反斜杠想要实现的转义功能首字母2、为什么需要转义字符 &#xff08;1&#xff09;当字符串中包含反斜杠、单引号、双引号等有特殊用途的字符时&#xff0c;必须使用反斜杠对这些字母进行转义&#xff08;换一个含义&#xff09;\\ 反斜杠 \ 单引号 …

python 中哪些的特殊字符转义

除了数字&#xff0c;python还可以处理字符串。使用单引号( )、双引号(" ")括起来代表字符串&#xff0c;也可以使用 “\”(反斜线)操作来对特殊字符想转译。 AHow are you? BI\m fine print(A) print(B)报错了 在交互式解释器中&#xff0c;输出字符串用引号括起…

python转义符以及input学习

文章目录 python 基本用法&#xff0c;转义字符以及format学习input用法学习 python 基本用法&#xff0c;转义字符以及format学习 转义字符 \n 换行转义字符 \t 制表符’ " \r回车#号单行注释‘’‘…’注释作用&#xff0c;或者保存格式的字符串字符串&#xff1a;“ad…

使用IDLE学习python转义符、变量类型、字符串、数字

一、转义符\ 1、在python中单引号和双引号一样&#xff0c;但不要混用“ ’ 2、反斜杠\是转义字符&#xff0c;即把有功能的字符直接打印出来&#xff0c; r 指 raw&#xff0c;即 raw string&#xff0c;会自动将反斜杠转义&#xff0c;即将反斜杠打印出来 >>> …

python第6个程序:字符串操作之转义符“\“

hello!大家好,我是浪矢秀一。今天我们来学习第6个程序:转义符"\"。 1.转义符作用 转义符,是存在于python字符串(str)类型里的1种特殊符号。它用来对字符串做1些特殊的操作,有换行,tab(4个空格)等。注意:计算机键盘上有2个斜线:"\"和"/",只有&qu…

python中的转义字符‘\’

转义字符&#xff1a; \ 反斜杠&#xff0c;在Java和python中都为转义字符 常用的转义字符&#xff1a; 换行&#xff1a;\n回车&#xff1a;\r水平制表符&#xff1a;\t退格&#xff1a;\b print(hello\nworld)print(hello\tworld) print(helloo\tworld) #一个\t是四个字…

python:转义符\

python中将各种类型表达式中的 \ 符号&#xff0c;都看作转义符&#xff0c;如 \n 代表换行 \t 代表空tab&#xff0c;还发现 \a 相当于什么都不是&#xff0c;改行末尾的 \ 的意思是该行还没写完&#xff0c;接着下边一行的内容。 转义符 对存在转义符命令表中的转义命令 起…

使用python输出转义符数据格式

python中常见的转义字符格式详见博文&#xff1a;python中常用的转义字符_IT之一小佬的博客-CSDN博客 案例分析&#xff1a; 给定下述字典格式&#xff1a; {name: zhangsan, age: 25} 输出为下述格式&#xff1a; ["{\"name\":\"zhangsan\"}&qu…

python中换行的转义符_Python中的转义符\

1、转义符 可以百度百科查询 2、Python中的转义符 我目前知道的Python中的转义符使用场景有两个&#xff1a;一个是字符串&#xff0c;一个是正则表达式 2.1、字符串的转义 2.1.1、反斜杠"\"进行转义 在字符串中&#xff0c;反斜杠"\"有特殊的含义&#xf…