私はこの方法を使用しています
static void readFile()
{
try
{
FileInputStream fstream = new FileInputStream( "Insurances.txt" );
BufferedReader br = new BufferedReader( new InputStreamReader( fstream ) );
String strLine;
String [] array;
while ( ( strLine = br.readLine() ) != null )
{
array = strLine.split( "," );
pword++;
int type = Integer.parseInt(array[0]);
int tm = Integer.parseInt(array[1]);
int year = Integer.parseInt(array[2]);
int month = Integer.parseInt(array[3]);
int day = Integer.parseInt(array[4]);
int pass = Integer.parseInt(array[5]);
double tc = 0;
if ( type==2 )
{
String man = array[6];
String mod = array[7];
int cc = Integer.parseInt(array[8]);
String lp = array[9];
String ex = array [10];
boolean extra;
if ( ex.equals("true") )
{
extra = true;
}
else
{
extra = false;
}
insurances[insur] = new CarInsurance( pword, type, tm, year, month, day, pass, tc, man, mod, cc, lp, extra );
tc = insurances[insur].calculateCost( pass, a, insur );
insurances[insur].setCost( tc );
insur++;
}
else
{
insurances[insur] = new LifeInsurance( pword, type, tm, year, month, day, pass, tc );
tc = insurances[insur].calculateCost( pass, a, insur );
insurances[insur].setCost( tc );
insur++;
}
System.out.println("y");
}
inp.close();
}
catch ( Exception e )
{
e.getMessage();
}
}
txt ファイルから情報を読み取り、LifeInsurance クラスまたは CarInsurance のオブジェクトを作成します。これを使用する理由System.out.println("y");
は、作成したいオブジェクトと同じ数のループを完了するかどうかを確認するためです。私のプログラムを実行しようとすると、7つのループ(7つのy)しか得られませんが、13が必要です.txtファイルに書いたものは次のとおりです。
1,12,2013,6,1,1939
2,12,2008,1,10,1939,メルセデス,E200,2000,AEX32100,false
2,12,2009,1,11,1939,メルセデス,E200,2000,AEX32100,false
2,12,2009,2,10,1940,フィアット,プント,1400,BIO1245,false
2,12,2009,2,10,1940,座席,イビザ,1600,BIE3987,false
2,12,2010,1,10,1940,座席,イビザ,1600,BIE3987,false
2,12,2013,6,1,1941,アウディ,A4,1600,IXE1256,true
1,12,2008,1,2,1942
1,12,2009,1,2,1942
1,12,2010,1,2,1942
1,12,2011,1,2,1943
2,12,2010,7,23,1943,ルノー,クリオ,1400,ZIO3890,真
2,12,2011,7,23,1943,ルノー,クリオ,1400,ZIO3890,真
13 ループすべてを完了しない理由が見つからないので、助けてください。前もって感謝します。