读取原始的,未编码的文件内容(字节)

时间:2011-06-27 22:27:54

标签: c#-4.0 file-io bytearray

我的任务是为粉末玩具制作“邮票创作者”。 “邮票”看起来像这样:http://i.imgur.com/3Cac3.jpg。我想为我的创建者使用字节值。为此,我需要阅读文件的未编码内容。有帮助吗?另外,我还需要创建这样的内容。 (也许我最好使用byte []数组?(但是如何输入特殊控制字符?)

1 个答案:

答案 0 :(得分:2)

您可以轻松使用File.ReadAllBytes来阅读该文件,并File.WriteAllBytes将其写回来。

如果您需要更多控制而不是将整个文件读入内存,则可以使用File.OpenReadFile.OpenWrite来使用Stream进行读写操作。如果您这样做,请确保将其丢弃 - 鼓励使用using关键字。

以下是几个例子

public void CopyFileByReadingItAllToMemory() {
    byte[] data = File.ReadAllBytes(@"C:\Temp\input");
    File.WriteAllBytes(@"C:\temp\output", data);
}

public void CopyFileWithoutReadingItAllToMemory() {
    using (Stream input = File.OpenRead(@"C:\Temp\input"))
    using (Stream output = File.OpenWrite(@"C:\Temp\output"))
    {
        while (true) {
            int value = input.ReadByte();
            if (value == -1) {
                break;
            }

            output.WriteByte((byte)value);
        }
    }
}