C#一次读取文件为十六进制一个字节

Sim*_*mon 1 c# hex file

可能重复:
使用IO在C#中读取十六进制

嗨,我是Java的新手,我在过去的两个小时里一直处于简单的困境中,或者应该如何想知道是否有人会帮助我:)

在Java中,我使用代码beleow读入一个文件,它使用十六进制读取给定文件,一次一个字节?在C#中这样做的方法是什么?

int hexIn;

File file = new File(filePath);

FileInputStream fis = new FileInputStream(file);

 for(int i = 0; (hexIn = fis.read()) != -1; i++){

   String s = Integer.toHexString(hexIn);
   if(s.length() < 2){
     s = "0" + Integer.toHexString(hexIn);
    }
}
Run Code Online (Sandbox Code Playgroud)

对不起,如果这看起来很笨,我只是卡住了!提前谢谢了!

:)

Mig*_*elo 5

试试这个,它是你发布的代码的直接转换:

        using (var file = File.Open("p:\\t.txt", FileMode.Open))
        {
            int b;
            while ((b = file.ReadByte()) >= 0)
            {
                string s = b.ToString("X");
                if (s.Length < 2)
                    s = "0" + s;

            }
        }
Run Code Online (Sandbox Code Playgroud)

  • 您可以使用格式字符串X2强制2位数而不是前置零. (2认同)