代码人生的小狗窝

一行行枯燥的代码,却描绘出人生的点点滴滴

您现在的位置是:首页>_C#

C#字符转换有关问题,路过的进来看看.

发布时间:2019-08-18浏览(1191)

    C#字符转换问题,路过的进来看看....
    该文件用记事本打开看不到什么东西,就几个乱码.
    用VS
    打开文件如下格式:
    30   00   47   33   31   35   38   00     00   00   93   14   01   00   BD   00
    13   00   C7   00   14   00   DA   00     1D   00   EC   00   33   00   11   02

    该文件包含着一些数据.
    我现在想把这个文件读出来,而且读出来的数据可以让人看懂.
    我用StreamReader读出来的依然是乱码...
    不知道是不是还要字符转换啊?

    望大虾指点下,感激不禁啊!
    最好给点代码.

    ------解决方案--------------------
    先用编码器 GB2312 编译一下,然后再读取...
    ------解决方案--------------------
    你的文件是不是文本格式的?
    ------解决方案--------------------
    是什么格式的文件
    ------解决方案--------------------
    看起来都是16进制的数
    ------解决方案--------------------
    独有的文件格式可能根本不存字符 转换有啥用啊
    ------解决方案--------------------
    你不知道他的数据储存结构没用,取不了
    ------解决方案--------------------
    这个文件是二进制流文件,你必须知道其文件存储格式,才能转换成有意义的数据
    ------解决方案--------------------
    没有数据的存储格式没办法去数据
    ------解决方案--------------------
    引入是流的格式错啊
    ------解决方案--------------------
    光知道字段,数据类型是不行的,比如把一个对象写到文件中,你不知道类怎么读?
    ------解决方案--------------------
    二进制文件,你必须知道其文件存储格式
    再用Response.BinaryWrite输出
    ------解决方案--------------------
    读写二进制文件没有什么特别的

    FileStream fs=File.OpenRead( "文件名 ");
    byte[] buf=new byte[fs.length];
    fs.read(buf,0,buf.length);

    一个不是很大的文件这样就可以读进来,关键是要知道那个文件的存储结构,要知道上面那个字节数组的哪个位置是存储的什么数据。
    例如,如果知道第1字节到第4字节存储的是日期,5,6字节存储温度值,那就可以通过处理得到有用的数据。
    这个定义你就要去问定义那个文件的人了