2012-04-30 20 views
-1

私は、Javaから読み込むための特別な.txtファイルを持っており、ここではその一部です:最初の列を特定の.txtファイルを読み込みますか?

absolute       mutlak(IBM)(MS) 
absolute address     mutlak adres(IBM) 
absolute device      mutlak aygıt(IBM) 
absolute positioned object   mutlak konumlu nesne(MS) 
absolute positioned paragraph  mutlak konumlu paragraf(MS) 
absolute positioning    mutlak konumlama(IBM) 
absolute priority     mutlak öncelik(IBM) 
Absolute reference     Mutlak referans(MS) 
abstract       soyut(IBM)(MS) 

で、2番目の列は、説明です。今ではオリジナルの説明を別々に読んでハッシュテーブルに格納する必要があります。どうすればいい?

+0

どちらがどのように定義されていますか?彼らは 'タブ'で区切られていますか?それは保証されていますか?テキストのどこにでもタブを表示できますか? – amit

+0

カラム間のスペースは2タブスペースです。そして2番目の列(または ")"文字の後に)行が終了します。 – user734577

答えて

1

ファイルを1行ずつ読みます。各行について、" "部分文字列(2つのスペース)のインデックスを検索します。インデックスの前のすべてとそれ以降のすべてを抽出します。両方の部分をトリムします。

実際にセパレータが一連のタブである場合は、" "の代わりに"\t"と同じアルゴリズムを使用します。

0

レイアウトこのファイルの説明、行内の長さと位置がわかります。次いで、各ラインのラインによって

start end description 
0  10 original 
11  50 description 

リード線、開始位置と位置によってストリング。

0

正規表現/ PatternをString.split()の引数として使用します。 \\s{2,}のようなものは、一連の連続した(1つ以上の)空白文字(スペース、タブなど)で文字列を分割します。

関連する問題