我的代码在Mac OS X 10.8.2上表现得非常奇怪。我有一个名为“HorváthJózsef”的文件夹,其名称中有一些特殊字符。我想用JFileChooser
查看此文件夹。当我通过双击JAR运行我的程序时,它不会显示名称中包含特殊字符的所有文件夹,但是当我从命令提示符java -jar test.jar
运行相同的程序时,它会显示所有文件夹包括具有特殊名称的文件夹。
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JFileChooser;
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;
public class Encoding {
public static void main(String[] arg) {
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (Exception ex) {
}
JFileChooser chooser = new JFileChooser(".");
chooser.showOpenDialog(null);
}
}
文件夹DKF}æßj
的名称中包含特殊字符。它没有显示在文件选择器中,当我尝试使用FILE类型读取时,它不会被识别为目录和文件 - 我得到FileNotFoundException
。
从命令行启动JAR是否以不同于双击JAR的方式运行JAR? 我使用的是Java 7u17。
答案 0 :(得分:0)
如果从命令行运行它,可能会以稍微不同的方式运行,而不是通过双击来运行它。如果您想确保一切正常,请不要在文件夹/文件名中包含特殊字符。