获取ASCII符号(C#)的二进制表示形式

获取ASCII符号(C#)的二进制表示形式,c#,binary,ascii,representation,C#,Binary,Ascii,Representation,很抱歉问这样的问题,但我真的被卡住了。 我有以下方法从文件中读取数据: public void ReadFromFile() { string fileName = @"my .txt file path"; StreamReader sr; List<char> encoded = new List<char>(); List<byte> converted = new List<byte>()

很抱歉问这样的问题,但我真的被卡住了。 我有以下方法从文件中读取数据:

public void ReadFromFile()
{
    string fileName = @"my .txt file path";
    StreamReader sr;
    List<char> encoded = new List<char>();
    List<byte> converted = new List<byte>();
    using (StreamReader sr = new StreamReader(fileName))
    {
        string line = sr.ReadToEnd();
        string[] lines = line.Split('\n');  

        foreach (var v in lines[2])
        {
            encoded.Add(v);   // just get data I need
        }
    }           }                                                                                      
public void ReadFromFile()
{
字符串文件名=@“my.txt文件路径”;
StreamReader sr;
列表编码=新列表();
列表转换=新列表();
使用(StreamReader sr=新StreamReader(文件名))
{
字符串行=sr.ReadToEnd();
string[]line=line.Split('\n');
foreach(第[2]行中的var v)
{
encoded.Add(v);//只需获取我需要的数据
}
}           }                                                                                      
现在在编码的中,我有F@符号。 我想得到01000110(F表示)和01000000(@representation) 我尝试将
列表编码的
中的每个项目转换为字节,然后使用
convert.ToString(值,2)

但这不是一个好主意,因为有一个错误“值对于无符号字节来说太大或太小。”

在输出文件中,我有如下内容:

s,01;w、 000;e、 一,;t、 001//字符字典及其代码

6//零的数量

F@//编码字符串


所以我想做的是将这个东西解码成输入字符串(即“sweet”)。为此,我需要将F@解码为0100011001000000

txt文件中的实际内容是什么?ASCII码?Unicode?一旦你阅读了文本,你想对它做什么?有两件事你可能没有意识到。(1) 您正在使用默认编码读取该文件,我认为是.NET Core上的UTF-8和.NET Framework上的当前代码页(不要引用我的话);显然不是ASCII码。(2) 通过将其读入字符串,可以将字符转换为UTF-16。如果您使用ASCII编码(使用)读取它,您可以确保它被正确解释。但是,在没有看到实际文件内容的情况下,不清楚您所描述的内容是什么意思。请添加该文件的示例和一些调试详细信息。“它可以是字符串、图像,等等。”-然后忘记使用
char
<代码>字节
是“通用”数据类型。