私はJavaに少し慣れていないので、誰かが私を助けてくれることを望んでいました. 私はいたるところを見てきましたが、解決策を見つけることができないようです。bufferedwriter を使用して、メソッドの結果をファイルに保存しようとしています。bufferedwriter 自体は、他の文字列を保存しているように機能しますが、この機能に関しては「null」と表示されるだけです。このメソッドの結果が複数の文字列を返すためですか? これを解決するにはどうすればよいですか? 私のコードは次のとおりです。
Bufferedwriter コード:
public static boolean saveStringToFile (String fileName, String saveString)
{
boolean saved = false;
BufferedWriter bw = null;
try
{
bw = new BufferedWriter(new FileWriter(fileName));
try
{
bw.write(saveString);
saved = true;
}
finally
{
bw.close();
}
}
catch (IOException ex)
{
ex.printStackTrace();
}
return saved;
}
関数自体:
public static void getNetDetails()
{
try {
Process net = Runtime.getRuntime().exec("lsof -i -n -P");
BufferedReader netInput = new BufferedReader(
new InputStreamReader(net.getInputStream()));
while ((netDetails = netInput.readLine()) !=null)
{
System.out.println(netDetails);
System.out.println("\n");
}
}
catch(IOException e) {
System.out.println("exception happened - here are the details: ");
e.printStackTrace();
}
}
bufferedwriter を使用して関数をファイルに保存する
public static void generateNetReport()
{
saveStringToFile("Net.txt","here is the thing.." + "\n" + netDetails );
}
nullを表示するだけでnetDetailsをファイルに保存する方法を教えてください。