Inventory.txt というテキスト ファイルから製品情報を抽出しようとしている Java Scanner を使用しています。
このファイルには、製品に関するデータが次の形式で含まれています。
“Danelectro|Bass|D56BASS-AQUA|336177|395.00Orange|Amplifier|BT1000-H|319578|899.00Planet Waves|Superpicks|1ORD2-5|301075|4.50Korg|X50 Music Synthesizer|X50|241473|735.00Alpine|Alto Sax|AAS143|198490|795.00”
文字列を解析して配列リストに追加し、配列リストの各要素が次のようになるようにしようとしています。
"Danelectro|Bass|D56BASS-AQUA|336177|395.00"
"Orange|Amplifier|BT1000-H|319578|899.00"
"KorPlanet Waves|Superpicks|1ORD2-5|301075|4.50"
"g|X50 Music Synthesizer|X50|241473|735.00"
"Alpine|Alto Sax|AAS143|198490|555.00”
以下は私のコードです:
public class ItemDao {
public ItemDao() {
scanFile();
}
public void scanFile() {
Scanner scanner;
ArrayList <String> content = new ArrayList <String>();
try {
Pattern p1 = Pattern.compile("\\.[0-9]{2}$");
scanner = new Scanner(new File("Inventory.txt"));
while (scanner.hasNext(p1)) {
content.add(scanner.next(p1));
}
for (String item : content) {
System.out.println("Items:" + item);
}
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
このコードをテストしたところ、arraylist が空であることがわかりました。どんな助けでも大歓迎です。
java -jar A00123456Lab5.jar
dao パッケージに ItemDAO クラスを作成します。このクラスには、Comparator (DAO = データ アクセス オブジェクト) を実装する静的内部クラスが含まれます。