1

我需要打开一个 .prn 文件并替换一些字符串。

在 .prn 文件中,我包含了一个图像,该图像具有如下字符串: 在此处输入图像描述

当我打开 .prn 文件时,C# 无法按原样读取字符串。

可能,它错过了一些编码,但不确定是哪一个。

我尝试了不同的编码,但没有成功。

以下是以读取模式打开文件的代码:

string text = File.ReadAllText(root + @"testImage.prn");

c# 以这种方式读取该字符串

在此处输入图像描述

而且我无法打印包含图像的文件。

在此先感谢您的帮助。

4

2 回答 2

2

大多数 PRN 文件都包含 ISO 编码。因此,尝试使用 ISO 编码并使用 System.IO.StreamReader 读取文件,并明确指定所需的编码。

以下示例在我的情况下完美运行:

System.Text.Encoding encoding = System.Text.Encoding.GetEncoding("ISO-8859-1");
string text;
using (System.IO.StreamReader sr = new System.IO.StreamReader(path, encoding))
{
    text = sr.ReadToEnd();
}
于 2020-07-03T06:08:27.920 回答
0

在 Java 中,它对我来说是这样工作的:使用 Stream 和字符集 ISO-8859-1。

Stream<String> stream = Files.lines(Paths.get(filePath), Charset.forName("ISO-8859-1"));
于 2021-06-15T11:40:11.000 回答