FC2ブログ

知らずに「推奨されてないAPI」を使ってしまった

昨日に引き続き、「パラメータファイルみたいなのを読み込んでHTMLファイルを出力する簡単なプログラム」を修正。

パラメータファイルに書いたパラメータが、
param=""
みたいになときに、うまく空文字列""を認識してくれない。

調べたところ、java.util.StringTokenizerクラスでは、連続する区切り文字は一つと見なしていた。
"を区切り文字としてStringTokenizerクラスを使うと、空文字列""は認識されない。
StringTokenizerの引数returnDelimsを使えばいいのだが、処理がちょっと長くなる。

API仕様書を良く読んだところ、
StringTokenizer は、互換性を維持する目的で保持されているレガシークラスであり、新規コードでは使用が推奨されていません。この機能の使用を考えているなら、String の split メソッドまたは java.util.regex パッケージを代わりに使用することをお勧めします。
と書かれていた。
「Java入門」で検索して一番上に出てきたサイトで、「有用な(?)クラス群」の一つとしてStringTokenizerが紹介されてたのに。
古いサイトではよくあることなんだろう。これからは気をつけよう。
結局、API仕様書に従ってStringTokenizerをString.splitに置き換えた。

パラメータファイルも充実してきたので、機能追加はしばらくいらないかなと思っている。
明日は、エラー処理も含めてちゃんとテストしてバグ出ししようかな。
スポンサーサイト



コメント

コメントの投稿

非公開コメント

プロフィール

himax64

Author: 南西
30代後半の無職です。
就活もせずダラダラ生きてます。
作ったもの

最新記事
人気記事
検索フォーム
カテゴリ
月別アーカイブ
最新コメント
最新トラックバック
RSSリンクの表示
QRコード
QRコード
カウンター