2016-08-31 7 views
0
System.out.println("Hi there!"); 

BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 
try 
{ 
    String newName = br.readLine(); 
} 
catch (IOException e) 
{ 
    e.printStackTrace(); 
} 

System.out.println(newName); 

Renamer renamer = new Renamer(new File("E:\\Downloads\\test")); 

renamer.justWorkPlease(newName); 

これはメイン部分です)と私はすべてのファイルの名前を変更するクラス(justworkplease)のメソッドを持って0.txt1.txtなどプログラムが実行されている間に名前をファイルに名前を変更

私の目標は、ファイルがビデオかサブタイトルかどうかを実現できるプログラムを作ることです彼らは一緒に属しているかしていない。映画が自分自身(.mkv.aviなど)のものにとどまることを除いて、同じ名前を付けてください。サブタイトルはsrtにとどまります。例えば 、

  • film.other.useless.informations.about.uploader.mkv
  • film-eng.srt

  • film.mkv
  • film.srt
に改名されますそれ

film 

、その後:長期的な目標ですので、任意の勧告が参考になる:)

しかし、気圧私はこの

println("please give me the name") 

のような出力になりたい

すべてのファイルの名前を変更して

  • film1.mkv
  • film1.srt
  • film2.mkv
  • film2.srt

ので、フィルムは可変であり、その後、それはちょうど私を置きます。

しかし私の問題は、bufferedreader私が知りませんでしたが、文字列newnameが読者の外で見えなくなることです。 (私はintellijを使用しているので、入力にはbufferedreaderまたはsthが必要です)

ありがとうございました! :)

答えて

0

私はそれを正しく理解したらどうですか?私はTRYブロックの外でnewName変数にアクセスできないと仮定しています。あなたはいくつかのNULLチェックを入れたいかもしれません。

String newName = null; 

BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 
try 
{ 
    newName = br.readLine(); 
} 
catch (IOException e) 
{ 
    e.printStackTrace(); 
} 

System.out.println(newName); 

Renamer renamer = new Renamer(new File("E:\\Downloads\\test")); 

renamer.justWorkPlease(newName); 
関連する問題