初心者の Java プログラマー、シフト タイプ、トランザクション タイプ、およびコストに関連する特定のデータを操作しながら、txt ファイル (レジからの出力) を読み取る方法を探しています。
どんな助けでも大歓迎です。
txt ドキュメントの行の例:
"カード"," 05-07-2012 10:32:42","ラミネート A4",10, 10 ,"ナイトシフト",1486510814,False,130
したがって、必要な関連情報は太字で表示され、テキスト行の残りの情報は無関係です。
Nightshiftで昨日(2012 年 5 月 7 日) に行われたすべてのカード取引の総コストを見つける必要がある場合。
これまでのところ、夜勤で分割しようとしました。また、配列を使用して各値を独自の変数に格納することも考えましたが、これは難しすぎることがわかりました。
import java.io.File;
import java.io.FileNotFoundException;
import java.text.SimpleDateFormat;
import java.util.*;
public class Finder{
public static void main (String args[]) throws FileNotFoundException
{
Calendar today = Calendar.getInstance();
SimpleDateFormat formatter=
new SimpleDateFormat("dd-MM-yyyy");
today.add(Calendar.DATE, -1);
String yesterday = formatter.format(today.getTime());
Scanner sc = new Scanner(new File("textdocument.log"));
while(sc.hasNextLine()) {
String[] numstrs = sc.nextLine().split(yesterday + "\"NIGHTSHIFT\""); // split by "
for(int i = 0; i < numstrs.length; i++)
{
System.out.println(numstrs[i]);
System.out.println();
}
}
}
}
望ましい出力:
2012 年 5 月 7 日の夜勤合計
現金合計 $20
カード合計 $40
Eftpos 合計 $20
私は明確に尋ねたことを願っています。
ありがとう