纯粹的英文文件,也就是说没有中文的。循环(直到文件结束)
{
  char c=得到下一个字符
  if (c>128) //汉字
  {
     messagebox(不是)
     break;
  } 
}

解决方案 »

  1.   

    1. 细节我记得不清楚了,其他语种的字和英文是有区别的
    大概是双字节字符是高位的128个代码后面跟一个字节,两个字节定义一个字符
    一般的做法是从文头开始分析.
    2. 自动换行是在每一个0x0A后面加一个0x0D字符
    3. 如果你要开发国际程序就有必要考虑UNICODE
      

  2.   

    1。ascII码在0-127都可以认为是英文字符(还有一些是控制码)
    2。换行加"\r\n"
    3。没有必要
      

  3.   

    还不简单,看看是不是ASCII字符了
      

  4.   

    一般是字符大小<0x0A的是英文www.programsalon.com
      

  5.   

    我在用 Binary 形式看我本地的文本文件,发现
    英文字母每个是以单字节表示,而汉字却以两个
    大于0x0A字节表示,但是 Unicode 却是任何字符
    均以双字节表示?????????
    望高手指点!
      

  6.   

    在这种情况下,英文字母或ACSII码又是如何表示
      

  7.   

    偶E文太菜,MSDN看个半懂,希望那位大虾能帮一把
      

  8.   

    1.用2进制打开文本文件后,显示的都是字符的ASCII码,同文本方式打开不同在于对"\r\n"的处理上面。
    2.汉字是双字节编码。
    3.unicode 里面的英文就是在ASCII前面加一个字节的0表示的
      

  9.   

    在NT/2000中,可以用IsTextUnicode()來判斷文件是否是Unicode碼,若是則肯定非純英文。
      

  10.   

    好像汉字编码的两个字节的ascii码都大于161
      

  11.   

    >=0xA0可认为是非英文,但是有些英文文件中含有半角制表符,所以还要考虑考虑。
      

  12.   

    这要看字符是ansi还是unicode,对于ansi,英文总小于127,对于unicode,英文是高位0,低位和ansi一样。
      

  13.   

    unicode 文件以0xfeff开头,英文字母是占16位的,高8位皆为0。
      

  14.   

    我没有见过Unicode文件?
    一般的系统中有吗,如PWin98,VS6.0英文版?
      

  15.   

    >>unicode 文件以0xfeff开头
       是指文件的头两个字节吗,其是作为专门的标志位吗?