-5

我需要将文件从第 27 个字节读取到 C# 中的字符串。

谢谢,湿婆。

4

4 回答 4

1
using(var fs = new FileStream("foo.txt")
{
    var bytes = new byte[fs.Length - 27];
    fs.Position = 27;
    fs.Read(bytes, 27, fs.Length - 27);
    var value = Encoding.ASCII.GetString(bytes);
}
于 2013-05-29T15:06:46.840 回答
1
byte[] allBytes = File.GetAllBytes(path);
byte[] bytes = allBytes.Skip(27).ToArray();

// Convert bytes to string
var encoding = ...
string result = encoding.GetString(bytes);

请注意,您需要选择正确的编码。

于 2013-05-29T15:07:07.610 回答
1
Encoding encoding = Encoding.ASCII; //? (Encoding.Default)
using (var f = File.Open(fileName, FileMode.Open))
{
    f.Position = 27;
    var yourString = new StreamReader(f,encoding).ReadToEnd();
}
于 2013-05-29T15:12:44.977 回答
-1

假设您正在寻找字节的十六进制表示,您需要将文件读入字节数组,然后将您感兴趣的字节传递给 BitConverter.GetString(byte[] bytes);

于 2013-05-29T15:07:19.033 回答