単語と意味をファイルから分離してから、それぞれの単語をsqlite(WORDS)テーブルに格納し、対応する意味を別の(意味)テーブルに保存します。ファイルからJavaの単語と意味
ファイルは次のようになります。
word 1
explanation 1
explanation 1
explanation 1
explanation 1
word 2
explanation 2
explanation 2
explanation 2
explanation 2
word 3
explanation 3
explanation 3
explanation 3
explanation 3
word 4
explanation 4
explanation 4
explanation 4
ここで問題となるのは、単語と意味を1対1で分ける方法を理解できないことです。説明行の間のスペースは、分割しても存在するはずです。
これまでに試したサンプルコードを示します。
Scanner sc = new Scanner(file);
String abbr = "";
String exp = "";
String line;
while (sc.hasNext()) {
if (!(line = sc.nextLine()).isEmpty() && !(line.startsWith(" "))) {
abbr = line;
//Debug
System.out.println(abbr);
printExp(exp);
exp = "";
} else if (line.isEmpty() || line.startsWith(" ")) {
exp += line;
}
}
デバッグ目的で使用される方法。
public static void printExp(String exp) {
if (!exp.equals("")) {
System.out.println(exp);
}
}
あなたは他の単純な解決策、たとえば正規表現を通して考えることができます。 ヘルプは非常に高く評価されます。私が正しくundertand場合
"ファイルは次のようになります。"エル、いいえ、それはイメージです。テキストファイルにはテキストが含まれています。 – Stewart
...実験するのが簡単です。 – ClasG
OK。ファイルのレイアウトを覚えておいてください。 – CodeRunner