我是Java新手,非常感谢以下程序中的任何帮助,我正在尝试提供已检查的exception
。
她的榜样:
package book1;
import java.io.*;
public class CheckedException {
public static void main(String[] args) {
openFile("D:Java.txt");
}
public static void openFile(String name)
{
try
{
FileInputStream f=new FileInputStream(name );
}
catch(FileNotFoundException e)
{
System.out.println("File Not Found!!");
}
}
}
问题:
Windows上文本文件的理想路径应为D:\ file.txt。但在此程序中,此语法会出错,表示错误的转义语法(\ n,\ t等)。为什么编译器(我在Windows 8.1上使用Eclipse Kepler)将路径文件视为转义序列?
即使我从符号(路径D:java.txt)中删除了\,程序也会抛出找不到文件的异常,然后被捕获,显示找不到文件的消息。
< / LI> 醇>请帮忙,
谢谢。答案 0 :(得分:4)
在java(以及许多其他语言)中,在编写字符串文字时,必须使用另一个反斜杠转义反斜杠:
openFile("D:\\Java.txt"); // This is the string D:\Java.txt
但java理解在使用反斜杠的操作系统上的文件路径中的正斜杠,所以你可以这样做:
openFile("D:/Java.txt");
为了解释您所看到的错误,字符串文字"\:"
是一个“转义冒号”,不是一个有效的java字符串转义序列。