从c#文本文件中读取整数并将其写入数组

本文关键字:数组 整数 文本 文件 读取 | 更新日期: 2023-09-27 18:14:21

我正试图从文本文件中读取像素值并生成图像文件。但首先我要确保我能读取文件中的所有值。我使用了这段代码,但是输出漏掉了输入文件中的一些整数——最后一个整数。我不知道为什么!你能帮我吗?下面是代码:

namespace txtToImg
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            TextWriter tw = new StreamWriter("D:''out.txt");
            string fileContent = File.ReadAllText("D:''in.txt");
            string[] integerStrings = fileContent.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
            int[] integers = new int[integerStrings.Length];
            //tw.Write(integerStrings.Length);
            for (int n = 0; n < integerStrings.Length; n++)
            {
                integers[n] = int.Parse(integerStrings[n]);
                tw.Write(integers[n]+" ");

            }
        }
    }
}

从c#文本文件中读取整数并将其写入数组

我同意Andrew的评论,你的streamWriter对象没有被关闭,所以我想尝试一下。我做了下面的更改,并尝试了您正在做的事情,我的输出文件包含了所有条目。

 using (TextWriter tw = new StreamWriter(@"D:'out.txt"))
        {
            string fileContent = File.ReadAllText(@"D:'in.txt");
            string[] integerStrings = fileContent.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
            int[] integers = new int[integerStrings.Length];
            for (int n = 0; n < integerStrings.Length; n++)
            {
                integers[n] = int.Parse(integerStrings[n]);
                tw.Write(integers[n] + " ");
            }
        }

好的,我刚刚运行了它,正如我所怀疑的那样,在循环之后需要以下内容:

tw.Close();