※ ChatGPTを利用し、要約された質問です(原文:あるファイルを選択するには)
ファイルを選択する方法と茶筌の形態素解析ツールの呼び出し
このQ&Aのポイント
任意のファイルを選び、そのテキストを茶筌にかける方法を知りたい
Javaを使って任意のファイルを選択し、茶筌の形態素解析ツールを呼び出す方法について教えてください
ファイル選択と茶筌の形態素解析ツールの使用方法について教えてください
下のプログラムで形態素解析ツールの茶筌を呼び出しています。
任意のファイルを選びそこに書かれているテキストを茶筌にかけたいと思っています。任意のファイルを選ぶためにはどのようにすればよいのか困っています。
是非お願いします。
import java.*;
import java.io.*;
import java.util.*;
class test1 {
public static void main(String[] arg) {
String result;
System.out.println(arg[0]);
ChasenHandler ch = new ChasenHandler();
result = ch.doChasen(arg[0]);
System.out.println(result);
}
}
class ChasenHandler {
StringTokenizer stn;
String CHASEN_COMMAND[] = {"chasen"};
String CHASEN_END = "EOS";
Process process;
BufferedWriter chasen_writer;
BufferedReader chasen_reader;
public ChasenHandler () {
try {
process = Runtime.getRuntime ().exec (CHASEN_COMMAND);
}
catch (IOException e) {
System.out.println ("Error in ChasenHandler");
return;
}
InputStream is = process.getInputStream ();
chasen_reader = new BufferedReader (new InputStreamReader (is));
OutputStream os = process.getOutputStream ();
chasen_writer = new BufferedWriter (new OutputStreamWriter (os));
}
String doChasen (String input) {
String result = "";
try {
chasen_writer.write (input , 0 , input.length());
chasen_writer.newLine ();
chasen_writer.flush ();
String line = "";
while (true) {
if ((line = chasen_reader.readLine ()).equals (CHASEN_END)) {
result = result + "EOS";
break;
}
result = result + line + "";
}
}
catch (Exception ie) {
result = "\n";
ie.printStackTrace ();
System.exit (0);
}
input = "";
return result;
}
}
お礼
run34rickyさんの言った通りでした。 普通にFileReaderで読み込めばよい話でした。 返事が遅くなり申し訳ありませんでした。 また、的確なご指摘ありがとうございました。