私はちょうどJavaの本を読んで、練習用の小さなプログラムをいくつか作成していました。入力したパスに関する情報を取得するための小さなコードを作成しました。コードは次のとおりです。
String path = JOptionPane.showInputDialog("Enter Path to analyze");
File file = new File(path);
if (file.exists())
{
String result = "";
if (file.isDirectory())
{
result += "Path is directory\n ";
String [] resList = file.list();
for (String s : resList)
{
result += s + ", ";
}
}
if (file.isFile())
{
result += "Path is a file\n";
}
JOptionPane.showMessageDialog(null, result);
入力ダイアログで、と入力するC:
と結果はbuild, build.xml, manifest.mf, nbproject, src
になりますが、C:/と入力すると、Cのディレクトリとファイルの完全なリストが表示されます。
そして奇妙なことに、それはDドライブと他のドライブでは起こりません(つまり、結果はD:/とD :で同じです)、何が起こっているのか説明してください。
更新 C#を使用したWPFでも同じことが起こります!