OutputStream os=new FileOutputStream("D:\\upload\\"+imageFileName);

为什么("D:\\upload\\"+imageFileName);\\upload\\中要用两个\\一个就不行。我们打开电脑找到那个路径不都是以个\的吗

因为你这段在引号内 (" "),只要出现\ ,就表示是转义字符,也就是说\不是一个输出的字符,而是跟后面那个字符连接起来,用来表示其他意义。(如\n就表示换行的意思)
按你的代码,如果只有一个 \ ,系统会把 \u 当成一个特殊的命令。(尽管\u没有对应什么命令)
所以你希望\作为字符输出,就必须使用\\ ,这样系统把\\当成特殊的转义字符,解析成一个\ 来输出。
具体内容可以查看转义字符的相关信息
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-08-09
单个的“\”在Java中是转义符,系统会自动认定这个“\”不是字符串,而是表示紧跟其后字符有特殊的意义,转义的称呼来由如此。比如3楼提到了,\后面加n,n就表示换行,其原本的意思已经被\符号进行了转换;\后面加u,表示这是个unicode字符的代码,后面跟着4位字符编号,u的意思同样被\进行了转换;还有其他\b 退格、\t tab键都是同理。而\\的意思,就是将后一个字符\原本的转义符功能进行转换,使其作为正常字符输出,这时候,两个\\应作为一个字符识别,就像前面提到的\n、\u一样。
第2个回答  2011-08-09
用一个"/"

OutputStream out=new FileOutputStream(file),报错了
你好,file对象不管是一个文件相对地址,还是java.io.File对象。其指向的文件不存在时,若目录存在,则会自动生成这个文件,若目录不存在,则就会报错。如:D:\\img\\1.jpg;若你电脑磁盘的D盘中没有img目录,则在执行代码时会报错。若存在img目录,则会自动生成1.jpg文件。

JAVA中如何将显示在控制台的数据输入到文本框中,如图所示
System.out.println这句代码是System类里面的out成员变量(它也是一个类).println()方法 其中的out是PrintStream类型的类 OutputStream os = new FileOutputStream(new java.io.File("c:\\\\这是测试.txt"));System.setOut(new PrintStream(os));这样就能拿到System.out.println打印出来的内容了。如果要...

得到file的文件名和存储路径后,在Struts2中的action中要怎样获取file的...
OutputStream os = new FileOutputStream(new File(root, fileFileName)); System.out.println("fileFileName: " + fileFileName);\/\/ 因为file是存放在临时文件夹的文件,我们可以将其文件名和文件路径打印出来,看和之前的fileFileName是否相同 System.out.println("file: " + file.getName()); System.out....

新建FileOutputStream 抛出IOException异常
FileOutputStream fout = new FileOutputStream(file2);出错,应该是指定的路径找不到 比如你只有 D:\\zip目录 你想解压出的目录是 D:\\zip\\a\\b\\c\\test.txt这样 那中间的a\\b\\c目是不存在的。创建出来就可以了 if(!file2.getParentFile().exists()){ file2.getParentFile().mkdirs();} 这...

我用jxl读取excel,获得workbook和sheet时出现异常,请求帮忙!
给你个例子自己好好看看···不行就把你的代码贴上···\/\/ 创建可写入的Excel工作薄 OutputStream os = new FileOutputStream("D:\\\\数据汇总分析表.xls");WritableWorkbook workbook1 = Workbook.createWorkbook(os);WritableSheet sheet = workbook1.createSheet("数据汇总分析表", 0);...

java中new fileoutputstream(文件路径)是否会自动创建文件?
这个要分情况看,例如创建文件路径为"D:\/111\/222\/myfile.txt"\\x0d\\x0a‍(1)当myfile.txt所在目录已经存在时:\\x0d\\x0aFileOutputStream fos = new FileOutputStream("D:\/111\/222\/myfile.txt");\\x0d\\x0a可以创建文件。\\x0d\\x0a(2)当myfile.txt所在目录不存在时:\\x0d...

jsp简单上传代码
String fileName = value.substring(start+1); request.setAttribute(name, fileName); System.out.println(fileName); OutputStream os = new FileOutputStream(new File(path,fileName)); InputStream is = item.getInputStream(); byte[] buffer = new byte[400]; int length = 0; while((length = is...

JAVA 导入数据库到Excel数据就是把图中Table中的信息放入Excel保存,需要...
OutputStream<-WritableWorkbook<-WritableSheet<-Label这里面Label代表的是写入Sheet的Cell位置及内容.代码:OutputStream os=new FileOutputStream("c:\\\\test.xls");\/\/输出的Excel文件URLWritableWorkbook wwb = Workbook.createWorkbook(os);\/\/创建可写工作薄WritableSheet ws = wwb.createSheet("sheet1", 0);\/\/...

SSH2中、从本地上传文件是怎么实现的?
String a[] = myFileFileName.split("\\\\.");System.out.println("上传文件名:"+a[0]+"上传文件类型:"+a[1]);\/\/设置目标文件 File toFile=new File(filePath,“可以自己取"+"."+a[1]);\/\/创建一个输出流 OutputStream os=new FileOutputStream(toFile);\/\/ OutputStream bos = ne...

同一个文件不同编码
可以的。编码其实跟文件没有关系,而是跟文件内的内容有关系。OutputStream os=new FileOutputStream("E:\\\\format.msg");用字节流来输入文件,而不用字符流。根据你的要求来调用下面的方法喽。os.write(str.getBytes("Unicode"));os.write(str.getBytes("ASCII"));不过像这样的文件打开后总是有...

相似回答