从二进制文件中读取一个流,写入一个数组,已经知道二进制格式,取出指定位置为文本信息
如何把比特数组转换成文本?请教高人,郁闷了一天
for i:=0 to length(bufferOfByte)-1 do
begin
    strASCII := strASCII + widechar(bufferOfByte[i]);
  end;
  result := strASCII;

解决方案 »

  1.   

    问题就是有中文就是乱码,因为是转换成单字节的ASCII,不知道如何判断那个位置为中文双字节
      

  2.   

    其中c:\1.txt中内容为 123你好啊
    可以正常显示var
      S: string;
      F: TFileStream;
    begin
      F := TFileStream.Create('c:\1.txt', fmOpenRead);
      SetLength(S, F.Size);
      F.ReadBuffer(S[1], F.Size);
      F.Free;
      ShowMessage(S);
    end;