0

ファイルをリストに読み込むには、ListUtilsという新しいクラスを作成し、public static ListElementというメソッドを記述します。readMP3List(String fileName)は、読み取るファイルの名前を取得し、を含むリンクリストの先頭を返すIOExceptionをスローします。そのファイルのオブジェクト。readMP3Listでは、クラスjava.io.BufferedReaderおよびjava.io.FileReaderを使用してfileNameを開き、一度に1行ずつ読み取る必要があります。各行をfileName、artistなどに分割し、これらの値を使用して新しいMP3Infoオブジェクトにデータを入力する必要があります。次に、作成したMP3Infoオブジェクトを含む新しいListElementオブジェクトを作成し、リストに追加します。

これまでのところ私は持っています:

public class ListUtils{

    public static ListElement readMP3List(String fileName) throws IOExeption{
    {
            // takes name of file  to be read
            // returns the head of Linkedlist
            File file = new File("random_sample.tsv");
            BufferedReader br = new BufferedReader(new FileReader(file));
            String first= br.readLine();
    }

ファイルには、分割する必要のある名前、アーティストなどの複数の行があります。これを実現するためにsplit(regex)を使用する方法について私は本当に混乱しています。

ファイルの例は次のとおりです。fileNameartistsongNamealbum trackNum numSeconds year genre \ n

4

2 に答える 2

2

手足に出て、これは宿題だと言いますか?とにかく、ここに正しい方向へのプッシュがあります:あなたのファイルが拡張子を持っているように見えることをtsv考えると、私はあなたの値がタブで区切られていると仮定することしかできません。タブで分割するには、split(...)と。を使用して調べます\t

注:渡されたものは使用していませんfileName:)

于 2012-07-09T23:58:06.573 に答える
1

私はこれがあなたが必要としているものだと思います:

String fist=  "fileName artist songName album trackNum numSeconds";

String[] data = fist.split(" ");//whitespace if tab replace with "\t"

String fileName = data[0];
String artist = data[1];
String songName = data[2];
String album = data[3];
String trackNum = data[4];
String numSeconds = data[4];
于 2012-07-10T00:47:46.260 に答える