C# 如何在C中将十六进制格式的字节文本文件转换为字节数组#

C# 如何在C中将十六进制格式的字节文本文件转换为字节数组#,c#,C#,将以下字节文本文件(acii十六进制格式)转换为C#中的字节数组的最佳方法是什么 到目前为止,我有一个方法,可以将它转换为所有这些值的字符串 public string ProcessTextFile(string filepath) { string sTextFile; string[] sDelimeters = { "\r\n" }; string[] TextFileLines; string sOutpu

将以下字节文本文件(acii十六进制格式)转换为C#中的字节数组的最佳方法是什么

到目前为止,我有一个方法,可以将它转换为所有这些值的字符串

    public string ProcessTextFile(string filepath)
    {
        string sTextFile;
        string[] sDelimeters = { "\r\n" };
        string[] TextFileLines;
        string sOutput;

        using (System.IO.StreamReader sr = new System.IO.StreamReader(filepath))
        {

            sTextFile = sr.ReadToEnd();
            TextFileLines =  sTextFile.Split(sDelimeters, StringSplitOptions.None);
            sOutput = string.Join(" ", TextFileLines);
            sr.Close();
        }

        return sOutput;
    }

把问题分解成几个步骤。你现在有什么?您有一个由两位十六进制值组成的字符串,由空格和/或换行符分隔

string input = "C7 40 04 96 96 C9 F3 3F C7 ED ...";
首先,要将该字符串拆分为十六进制值。听起来是个完美的候选人

string[] groups = input.Split(new[] {' ', '\n'}, StringSplitOptions.RemoveEmptyEntries);
接下来,您需要将每个两位十六进制值转换为一个字节。我们应该在这里做这个把戏

byte[] ar = groups.Select(s => Byte.Parse(s, NumberStyles.HexNumber)).ToArray();

把问题分解成几个步骤。你现在有什么?您有一个由两位十六进制值组成的字符串,由空格和/或换行符分隔

string input = "C7 40 04 96 96 C9 F3 3F C7 ED ...";
首先,要将该字符串拆分为十六进制值。听起来是个完美的候选人

string[] groups = input.Split(new[] {' ', '\n'}, StringSplitOptions.RemoveEmptyEntries);
接下来,您需要将每个两位十六进制值转换为一个字节。我们应该在这里做这个把戏

byte[] ar = groups.Select(s => Byte.Parse(s, NumberStyles.HexNumber)).ToArray();