java判断磁盘是否有txt文件_JAVA写了一段代码,目的是往磁盘写一个txt文件,但不成功。...

JAVA写了一段代码,目的是往磁盘写一个txt文件,但不成功。

关注:290  答案:2  mip版

解决时间 2021-01-27 23:50

e6cb1a03ad541b3098697807b7bf1798.png

提问者帆佈素顔钕漢囝

2021-01-27 03:14

新手初学。是想往C盘写一个txt文件,文件名称和文件内容通过手动输入,发现重名后,重新输入一个文件名。但现在输入文件名后就没有反映了,里面输出创建成功的语句也没有出来。请高手给看下哪里问题

import java.io.*;

import java.util.*;

class ListFileDemo

{

public static void main(String args[])

{

System.out.println("请输入一个要写入的字符串:");

Scanner scaString=new Scanner(System.in);

String str=scaString.next();

System.out.println("请输入一个带.txt的文件名称:");

Scanner scaFile=new Scanner(System.in);

String filePath=scaFile.next();

File file=new File("c:\\"+filePath);

if(file.exists())

{System.out.println("文件已存在,是否覆盖?(y\\n)");

Scanner scaYN=new Scanner(System.in);

String stYN=scaYN.next();

if(stYN.equals("y"))

{

try{

FileWriter fw=new FileWriter(file);

fw.write(str);

System.out.println("文件创建成功!");

fw.close();

}catch(IOException e){

e.printStackTrace();

System.out.println("输出文件错误!!!");

}

}

else if(stYN.equals("n"))

{

System.out.println("请重新输入一个文件名:");

Scanner scaFile2=new Scanner(System.in);

String filePath2=scaFile2.next();

File file2=new File("c:\\"+filePath2);

try{

FileWriter fw=new FileWriter(file2);

fw.write(str);

System.out.println("文件创建成功!");

fw.close();

}catch(IOException e){

e.printStackTrace();

System.out.println("输出文件错误!!!");

}

}

}

}

}

最佳答案

e6cb1a03ad541b3098697807b7bf1798.png

二级知识专家山河已春

2021-01-27 04:19

给你改了下,你看看

import java.io.*;

import java.util.*;

class ListFileDemo {

public static void main(String args[]) {

System.out.println("请输入一个要写入的字符串:");

Scanner scaString = new Scanner(System.in);

String str = scaString.next();

System.out.println("请输入一个带.txt的文件名称:");

Scanner scaFile = new Scanner(System.in);

String filePath = scaFile.next();

File file = new File("c:\\" + filePath);

if (file.exists()) {

System.out.println("文件已存在,是否覆盖?(y\\n)");

Scanner scaYN = new Scanner(System.in);

String stYN = scaYN.next();

if (stYN.equals("y")) {

try {

FileWriter fw = new FileWriter(file);

fw.write(str);

System.out.println("文件创建成功!");

fw.close();

} catch (IOException e) {

e.printStackTrace();

System.out.println("输出文件错误!!!");

}

} else if (stYN.equals("n")) {

System.out.println("请重新输入一个文件名:");

Scanner scaFile2 = new Scanner(System.in);

String filePath2 = scaFile2.next();

File file2 = new File("c:\\" + filePath2);

createFile(file2,str);

}

}else {

createFile(file,str);

}

}

public static void createFile(File file,String content){

try {

FileWriter fw = new FileWriter(file);

fw.write(content);

System.out.println("文件创建成功!");

fw.close();

} catch (IOException e) {

e.printStackTrace();

System.out.println("输出文件错误!!!");

}

}

}

全部回答

e6cb1a03ad541b3098697807b7bf1798.png

1楼烈酒℃灼言EL

2021-01-27 05:20

把错误提示信息也粘出来,用同一个scanner会好点,不需要在新new出一个scanner来,试一下

再看看别人怎么说的。

我要举报

如以上问答内容为低俗/色情/暴力/不良/侵权的信息,可以点下面链接进行举报,我们会做出相应处理,感谢你的支持!

→点此我要举报以上信息!←

推荐资讯

大家都在看

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值