Thread thread = new Thread() {
@Override
public void run() {
try {
saveDataFromWeb();// here i write data into a file
} catch (Throwable e) {
AlertDialog.Builder builder = new AlertDialog.Builder(
findViewById(R.id.viewpager).getContext());
StringWriter sw = new StringWriter();
PrintWriter pw = new PrintWriter(sw);
e.printStackTrace(pw);
sw.toString();
builder.setMessage(sw.toString());
AlertDialog alert = builder.create();
alert.show();
}
}
};
if (CONDITION) {
thread.start();
parseData("ThisWeekDatabase"); // here I read the data from the
parseData("NextWeekDatabase");
}
エラーが見つかりました。これらのファイルを読み取ろうとすると、スレッドの作業 (Web からファイルへのデータの書き込み) が完了していないためです。ここで、スレッドが必要なときにファイルの書き込みを終了するように、スレッドを「待機」する方法がparseData(xyz)
必要です。
また、ファイルにデータを書き込む方法またはファイルからデータを読み取る方法のいずれかが間違っています。以前に書き込んだファイルを読み取ると、複数の短い行ではなく、1 つの長い行が表示されるためです。
私は得る
div.lvsdrt {background-color:#e3f1ff; border-top:black 1px dotted;padding:0.1em;}div.lvwer{background-color:#f2f9ff;border-top:black 1px dotted;padding:0.1em;}div.nobreak {page-break-inside:avoid;}
代わりに
div.lvsdrt {
background-color:#e3f1ff;
border-top:black 1px dotted;
padding:0.1em;
}
div.lvwer {
background-color:#f2f9ff;
border-top:black 1px dotted;
padding:0.1em;
}
div.nobreak {
page-break-inside:avoid;
}