none
如何获取字符串所占的字节数 RRS feed

  • 问题

  • 我读了一个文本文件,文本文件中是中文字符。在属性中查看,文件大小为365K(374110字节)
    我用
    Console.WriteLine(strFileContent.ToCharArray().Length);
    Console.WriteLine(Encoding.Default.GetByteCount(strFileContent));
    进行了测试前才是298572,后者是308596
    差别很大。
    我想问一下怎么样来获取这个字符串实际所占的字节数呢?
    2009年10月8日 1:21

答案

全部回复

  •  public static string ReadFile(string strPath)
            {
                try
                {
                    TextReader tr = new StreamReader(strPath);
     
                    string str = tr.ReadToEnd();
                    tr.Dispose();
                    tr = null;
                    return str;
                }
                catch (Exception ex)
                {
                    Console.WriteLine("读文件[" + strPath + "]的内容时出错!");
                    return "";
                }
            }
    我新建设一个文本文件,随便输入几个中文字符。结果
     Console.WriteLine("文件内容:" + strFileContent);
    输出来的是乱码,怎么回事儿?
    2009年10月8日 1:27
  • Try it!


    TextReader tr = new StreamReader(strPath, System.Text.Encoding.Default);

    StreamReader 构造函数 (Stream, Encoding)
    http://msdn.microsoft.com/zh-cn/library/ms143456(VS.80).aspx
    • 已标记为答案 male110 2009年10月8日 2:43
    2009年10月8日 1:55