문제

이 코드는 정확합니다 ??

String note = "text.txt";
FileWriter file = new FileWriter(note);
Scanner sc = new Scanner(System.in);
System.out.println("Enter your name:");
String name = sc.next();
file.close();

이 파일을 어떻게 명령 줄 인수로 프로그램에 전달할 수 있습니까 ???

도움이 되었습니까?

해결책

글쎄, 개인적으로 나는 결코 사용하지 않을 것입니다 FileWriter 시스템 기본 인코딩을 사용하므로 대부분의 시간에 불쾌한 일입니다. 나는 선호한다 FileOutputStream + OutputStreamWriter. 그러나 그 말을 ...

명령 줄 인수로 무엇을 전달하고 싶습니까? 파일 이름? 쉽습니다 :

public static void main(String[] args)
{
    // Insert error checking here (e.g. args.length == 0)
    String note = args[0]; // For the first argument
    // Rest of code here
}

만약 그렇다면 ~ 아니다 당신이 의미하는 바, 질문을 편집하여 명확히하십시오.

제목으로 판단하면 대신 파일에서 System.in. 이 경우, 당신은 File 물체 또는 an InputStream (와 같은 FileInputStream) 또는 실제로 a Readable (와 같은 InputStreamReader). 당신이 통과하려면 a File 또는 InputStream, 나는 당신이 캐릭터 인코딩 이름을 전달하는 것이 좋습니다. (왜 그것이 그것을 Charset 저를 넘어서지만 Java API는 인코딩과 관련하여 기본적으로 꽤 나쁩니다.)

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top