以前C言語で制作したNC言語コンパイラ(NC加工シミュレータ)
にちゃんとしたUIを実装させるべくJavaに移植することに
ファイルから1行ずつ読み込んでString型にするのは
BufferedReaderクラスのreadLine()メソッドでできました
次いで1行を要素ごとに分割するためのメソッドを探すことに
とりあえずStringクラスからは、split()メソッドかsubstring()メソッドが使えそう。
文字列の比較はどうしよう。
C言語のctype.hみたいにisalphaとかisdigit関数的なものはあるのかな。
けどStringクラスのメソッドでisではじまるのはisEmpty()しかなかった。
substringで1文字ずつ読み込んで,正規表現と比較することに。
読み込んだ文字列を変数strに入れ
"\0"が出てくるまで1文字ずつ調べていき
str.substring(i, i+1) == "[a-zA-z]"
str.substring(i, i+1) == "[0-9]"
といった具合に英字なのか数時なのかチェック。
英字+数字をセットで文字列型配列に入れていくように。
するとエラーは出ないけどうまく比較できない。なぜだろう。
調べてたら文字列は==や!=で比較しちゃいけないらしい。
NetBeansにも黄色線で警告してくれてました。
でもうまくいかない。ヌル文字(\0)もないみたい。よくわからない。
にちゃんとしたUIを実装させるべくJavaに移植することに
ファイルから1行ずつ読み込んでString型にするのは
BufferedReaderクラスのreadLine()メソッドでできました
次いで1行を要素ごとに分割するためのメソッドを探すことに
とりあえずStringクラスからは、split()メソッドかsubstring()メソッドが使えそう。
文字列の比較はどうしよう。
C言語のctype.hみたいにisalphaとかisdigit関数的なものはあるのかな。
けどStringクラスのメソッドでisではじまるのはisEmpty()しかなかった。
substringで1文字ずつ読み込んで,正規表現と比較することに。
読み込んだ文字列を変数strに入れ
"\0"が出てくるまで1文字ずつ調べていき
str.substring(i, i+1) == "[a-zA-z]"
str.substring(i, i+1) == "[0-9]"
といった具合に英字なのか数時なのかチェック。
英字+数字をセットで文字列型配列に入れていくように。
するとエラーは出ないけどうまく比較できない。なぜだろう。
調べてたら文字列は==や!=で比較しちゃいけないらしい。
NetBeansにも黄色線で警告してくれてました。
でもうまくいかない。ヌル文字(\0)もないみたい。よくわからない。