用txt文档来保存一些配置信息,编码方式是默认的ANSI,
C:\jack\d\workspace\Bam_Test\BAM Testing_Data.xml
//Table[contains(@name,'Data Preparation')]/Rows/Row/@isEnabledJAVA CODE 读入第一行
FileInputStream fis = new FileInputStream(file);
InputStreamReader isr = new InputStreamReader(fis);
BufferedReader br = new BufferedReader(isr);
没有问题.可是为什么换成其他编码方式 例如 UTF-8 就报错
java.io.FileNotFoundException: C:\jack\d\workspace\Bam_Test\BAM Testing_Scenarios.xml (The filename, directory name, or volume label syntax is incorrect)

解决方案 »

  1.   

    看你文件名称没有什么中文字符,全部是英文字符,如果报FileNotFoundException跟文件编码没有关系,你仔细找找你写的文件路径是否正确,大小写和空格什么的,看看是不是结尾或者开头多了什么还有你写的文件路径分隔符是否合法
      

  2.   

    C:\jack\d\workspace\Bam_Test\BAM Testing_Data.xml
    C:\jack\d\workspace\Bam_Test\BAM Testing_Scenarios.xml这么明显的不同
      

  3.   

    路径应该没有问题,我换回来ANSI 程序就不报错了.
      

  4.   

    错误信息应该是这样
    Nested exception: 
    java.io.FileNotFoundException: C:\jack\d\workspace\Bam_Test\BAM Testing_Data.xml (The filename, directory name, or volume label syntax is incorrect)
    at java.io.FileInputStream.open(Native Method)
    at java.io.FileInputStream.<init>(FileInputStream.java:106)
    at org.dom4j.io.SAXReader.read(SAXReader.java:243)
    at xml.Test.setAttributeToTrue(Test.java:52)
    at xml.Test.main(Test.java:30)
      

  5.   

    notepad里的ansi编码其实是windows默认编码 中文版是gbk
      

  6.   

    你报的错误java.io.FileNotFoundException,应该是文件没有找到,关于不同编码的文件,要正确读入,看看这个:http://blog.csdn.net/wula0010/article/details/6862696