Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将二进制数据从一个文件读写到另一个文件_C#_Encoding_Streamwriter - Fatal编程技术网

C# 将二进制数据从一个文件读写到另一个文件

C# 将二进制数据从一个文件读写到另一个文件,c#,encoding,streamwriter,C#,Encoding,Streamwriter,我正在读取一个二进制文件,并跳过几行,以CP437格式写入另一个文件。但是输出文件的大小比原始文件大,而且数据也损坏了。任何有助于确定问题的信息 StreamReader sStreamReader = new StreamReader(@"D:\Denesh\Input.txt"); string AllData = sStreamReader.ReadToEnd(); string[] rows = AllData.Split(",".ToCh

我正在读取一个二进制文件,并跳过几行,以CP437格式写入另一个文件。但是输出文件的大小比原始文件大,而且数据也损坏了。任何有助于确定问题的信息

        StreamReader sStreamReader = new StreamReader(@"D:\Denesh\Input.txt");
        string AllData = sStreamReader.ReadToEnd();
        string[] rows = AllData.Split(",".ToCharArray());

        FileStream fileStream = new FileStream(TransLog, FileMode.Open);
        StreamReader streamReader = new StreamReader((Stream)fileStream, Encoding.GetEncoding(437));
        StreamWriter streamWriter = new StreamWriter(outFile, false);
        int num = 0;
        int count = 0;

            while (!streamReader.EndOfStream)
            {
                string tlogline = streamReader.ReadLine();

                if (rows[count] == Convert.ToString(num))
                {
                    ++count;
                }
                else
                {
                    ++num;
                    streamWriter.WriteLine(tlogline, streamReader.CurrentEncoding);
                }
            }

        fileStream.Close();
        streamWriter.Close();

为streamwriter添加filestream解决了这个问题。谢谢。

为streamwriter添加filestream解决了这个问题。谢谢