我正在处理文本压缩程序应用程序但是我在读取文件时遇到问题。获取文件的byte []后,我用ASCII编码(在.txt文件中使用我测试),然后将字符串打印到屏幕上。我得到的结果不完整,显示的字符很少,文档的文字不可读。我已经能够成功地在文本编辑器中打开文件,因此我得出结论它没有被破坏。我希望这个问题对其他人也有帮助。我的相关代码和结果片段如下。
代码:
//Takes the file and breaks it down into a byte array
public void ReadFile(string fileLocation) {
FileStream file = new FileStream(@fileLocation, FileMode.Open); //Opens the file
byte[] buffer = new byte[file.Length]; //Sets the Length of the array 'buffer' to the length of the amound of bytes in the file
file.Read(buffer, 0, (int)file.Length); //Reads the data (bytes) from the file and stores it in 'buffer'
file.Close(); //Closes the file
Convert(buffer); //Starts the function 'Convert' passing in 'buffer' as the dada value
}
//Takes the byte array and puts it into ASCII encoding
public void Convert(byte[] byteData) {
data = Encoding.ASCII.GetString(byteData); //Convert and store the converted data into the variable 'data'
}
结果摘录:
结果中的区域包含'(??'是应显示文件中文本的位置。