私のJavaアプリがファイルの拡張子を検出し、このように、ワードパッドを使用して、Windowsで開きます:MacでTextEditを見つけるには?
public static Process Display_File(String File_Path)
{
String Command,Program,Suffix=File_Path.toLowerCase();
Process process=null;
if (Suffix.endsWith("txt") || Suffix.endsWith("json")) Program="C:\\Program Files (x86)\\Windows NT\\Accessories\\word_pad.exe ";
Command=Program+"\""+File_Path+"\"";
try { process=Runtime.getRuntime().exec(Command); }
catch (Exception e) { e.printStackTrace(); }
return process;
}
しかし、それは、Mac上では動作しません、私は、Mac上のTextEdit.appが存在しているはずなので、どのように変更します上記のコードはMac上で実行するには?変更後
、それは次のようになります。
public static Process Display_File_On_Mac(String File_Path)
{
String Command,Program,Suffix=File_Path.toLowerCase();
Process process=null;
if (Suffix.endsWith("txt") || Suffix.endsWith("json")) Program="/Applications/TextEdit.app ";
Command=Program+"\""+File_Path+"\"";
try { process=Runtime.getRuntime().exec(Command); }
catch (Exception e) { e.printStackTrace(); }
return process;
}
しかし、私はこのエラーを得た:
java.io.IOException: Cannot run program "/Applications/TextEdit.app": error=13, Permission denied
それを修正する方法は?以下のパスを与えるエル・キャピタンで
は、「/」、「\」はWindows固有の区切りであることに注意してください。それを変更して、それが機能するかどうか確認してください。編集:また、プログラムがWindowsの最初のものとして最初に一致しないMacで正しいパスに設定されていることを確認してください、私はMacがProgramFilesと呼ばれるフォルダを持っているとは思わない – SomeStudent
TextEditアプリケーションJavaプログラムを実行しているユーザに – Sanjeev
テキストファイルを開きたい場合は、プロセスを作成します: 'open PATHTOFILE'を開きます。 – ifly6