我的代码在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。
最佳答案
如果从命令行运行它,则与通过双击运行它的方式可能会稍有不同。如果要确保一切正常,请在文件夹/文件名中不要包含特殊字符。
关于java - 双击jar并在Mac上的命令提示符下运行同一jar时的不同行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17653169/