Я прочитал двоичный файл при использовании С# в соответствии со следующим кодом. Затем я попытался записать эти двоичные данные в другой двоичный файл. Но я обнаружил, что когда я открыл эти 2 файла в Winmerge, в обоих бинарных файлах есть разница. то есть чтение файла и запись файла. Не могли бы вы подсказать, почему есть разница, если я просто читаю файлы и переписываю?
string fileNameWithPath_ = "1.pwpmi";
string newfileNameWithPath_ = "2.pwpmi";
System.IO.FileStream fileStream = new System.IO.FileStream(fileNameWithPath_, System.IO.FileMode.Open,
System.IO.FileAccess.Read);
System.IO.BinaryReader binReader = new System.IO.BinaryReader(fileStream, Encoding.ASCII);
char[] chararr = new char[fileStream.Length];
chararr = binReader.ReadChars((int)fileStream.Length);
byte[] buffer = binReader.ReadBytes((int)fileStream.Length);
byte[] bytes = new byte[fileStream.Length];
fileStream.Read(bytes,0, (int)fileStream.Length);
byte[] fileBytes = System.IO.File.ReadAllBytes(fileNameWithPath_);
string stringbyte1 = Encoding.ASCII.GetString(fileBytes);
binReader.Close();
fileStream.Close();
System.IO.BinaryWriter binWriter =
new System.IO.BinaryWriter(System.IO.File.Open(newfileNameWithPath_, System.IO.FileMode.Create));
binWriter.Flush();
binWriter.Write(stringbyte1);
binWriter.Close();
System.IO.FileStream fileStream = new System.IO.FileStream(...)
. Можете ли вы описать, что вы на самом деле пытаетесь сделать? Вы просто хотите создать копию файла? Или изменить некоторые части первого, сохранив результат во втором? Что-то другое? - person Jimi   schedule 18.05.2020File.Copy(srcPath, dstPath)
или в худшем случае (если вы действительно хотите перехватить или преобразовать скопированные данные):File.WriteAllBytes(dstPath, File.ReadAllBytes(srcPath))
? - person Wyck   schedule 18.05.2020