ファイルを行単位で読み込み、フォーマットする方法がわかりません。大きな問題は、「人」に「番号」を割り当てたテキストファイルがあることです。最初の数字は "001"です。私がそれを読むと、それは "1"として保存されます。それは私の数字のすべての先行ゼロで同じことをします。 「002」は「2」になり、「030」は「30」になります。それぞれの数字は3桁で、私はそれをそのまま保持したい。ここでJava:テキストファイルの読み込みと書式設定中に先行ゼロを維持する
は、私は、ファイルから読み取ったコードのビットは次のとおりです。
do {
next = Breader.readLine();
sNumber = Integer.parseInt(next);
nameArray.add(sNumber);
sName = Breader.readLine();
nameArray.add(sName);
end = Breader.ready();
} while(end);
それはInteger.parseInt();
機能で何かでなければなりません。
import java.io.*;
import java.util.Scanner;
import java.util.ArrayList;
public class FinalProgram {
public static void main(String[] args) IOException {
nameReader();
}
private static void nameReader() throws IOException {
String nameFile = " ";
String next = " ";
int sNumber = 0;
String sName = " ";
Scanner input = new Scanner(System.in);
ArrayList nameArray = new ArrayList();
try {
System.out.print("Enter the Name file(c:filename.txt): ");
nameFile = input.nextLine();
} catch(IllegalArgumentException e) {
System.out.printf("Invalid input. Please enter"
+ " filename in the form of "
+ "c:filename.txt\n", e.getMessage());
}
//Instantiate FileReader and BufferedReader
FileReader freader = new FileReader(nameFile);
BufferedReader Breader = new BufferedReader(freader);
boolean end = Breader.ready();
do {
next = Breader.readLine();
sNumber = Integer.parseInt(next);
nameArray.add(sNumber);
sName = Breader.readLine();
nameArray.add(sName);
end = Breader.ready();
} while(end);
System.out.print(nameArray);
}
}
私はこれが好きですが、どのようにファイルから読み込み、それを整数にすることができますか? Integer.parseInt(n);を使用しようとすると、エラーが発生します。 次= Breader.readLine(); sNumber = Integer.parseInt(next); nameArray.add(sNumber); –
私はこれを試しました: next = Breader.readLine();sNumber = Integer.parseInt(nf.format(Breader.readLine())); しかし、それは私にエラーを与えます:java.lang.IllegalArgumentException:指定されたオブジェクトを数値としてフォーマットできません –
!あなたが何を意味するのか分からなかっただけです。私はarraylistに格納する前に、私はString.formatを使用し、それはうまくいきます。ありがとうございました。 –