- 締切済み
プログラム実行できません。
複数のMP3ファイルからタグ情報を取り出すプログラムなのですがMainクラスを実行すると引数にディレクトリを指定してと表示されてしまいます。どの箇所の引数にディレクトリのパスを記述すれば取り出せるのかご教授お願い致します。直、プログラム大きく分けて6つあります。 以下がMainプログラムになります。 **FileList objFileList = new FileList();の括弧の中にディレクトリパスを指定して実行してみましたが引数にディレクトリに指定してと表示されてしまいます。** /** * ID3Tag取得プログラム:MP3FileListMainクラス * Mainクラス **/ import java.io.File; import java.io.UnsupportedEncodingException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Iterator; import java.util.List; import java.util.ArrayList; public class MP3FileListMain { /** * @param args * @throws UnsupportedEncodingException */ public static void main(String[] args) throws UnsupportedEncodingException { if(args.length < 1) { System.out.print("引数にディレクトリを指定して\n"); return; } File objFile = new File("args[0]"); if(!objFile.isDirectory()) { System.out.print("引数に指定したのは、ディレクトリではない\n"); System.out.print("引数にディレクトリを指定して\n"); return; } FileList objFileList = new FileList(objFile); /*このobjFileの部分にパスを指定したんですけど*/ long lRnt = objFileList.getFileInfo(); // System.out.print(lRnt); try { MP3Tag.init(); } catch (ClassNotFoundException e) { e.printStackTrace(); } MP3Tag.outputFiles(objFileList); } private static class MP3Tag { private static long lSeriesNo_ = 0; private static long lMaxSeriesNo_ = 0; private static long lFileNo_ = 0; private static long lMaxFileNo_ = 0; private static long lTypeNo_ = 0; private static SimpleDateFormat sdf_; private static int handle1_; private static int handle2s_; private static int handle21s_; private static int handle22s_; private static int handle2i_; private static int handle3s_; private static int handle3i_; private static int handle3u_; private static void init() throws ClassNotFoundException { sdf_ = new SimpleDateFormat("yyyyMMddHHmmss"); } private static void outputFiles(FileList objFileList) { int handle = 0; long lSeriesNo = lSeriesNo_; MP3File objMP3File; ArrayList objMP3List; // System.out.print(objFileList.getDir() + "\n"); Iterator iteMP3File = objFileList.getMP3FileIte(); while(iteMP3File.hasNext()) { objMP3File = (MP3File)iteMP3File.next(); try { objMP3List = objMP3File.getMP3Info(); } catch (Exception e) { e.printStackTrace(); return; } try { for(int i = 0; objMP3List.size() > i; i++) { System.out.print(lFileNo_ + ","); System.out.print(lTypeNo_ + ","); System.out.print(lSeriesNo + ","); MP3Info objMP3Info = (MP3Info)objMP3List.get(i); System.out.print(objMP3Info.getLastModified() + ","); System.out.print(objMP3Info.getFileSize() + ","); System.out.print(objMP3Info.getTagVersion() + ","); System.out.print(objMP3Info.getTrackNo() + ","); System.out.print(objMP3Info.getTitle() + ","); System.out.print(objMP3Info.getGenre() + ","); System.out.print(objMP3Info.getArtist() + ","); System.out.print(objMP3Info.getComment() + ","); System.out.print(objMP3Info.getYear() + ","); System.out.print(sdf_.format(new Date()) + ","); System.out.print(objMP3Info.getPath() + ","); System.out.print(objMP3Info.getFileName() + "\n"); } } catch (Exception e) { e.printStackTrace(); return; } lFileNo_++; } Iterator iteDir = objFileList.getDirIte(); while(iteDir.hasNext()) { outputFiles((FileList)iteDir.next()); } } } }
- みんなの回答 (2)
- 専門家の回答