- - PR -
YYYY月MM月DD日をYYYYMMDDにする方法
1|2|3
次のページへ»
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2007-07-27 11:05
ご質問をさせて下さい。
javaでの開発をしております。 今、画面上で入力された日付の値(YYYY月MM月DD日) を YYYYMMDDに変える処理を考えているのですが、 どうしても出来ないため、スレッドを立てさせて 頂きました。 上記の問題点として、画面上で入力される日付が YYYY月までは桁数が一定(YYYY→4桁)なんですが、 MM月とDD日に関しては、一桁の場合と二桁の場合の 二つのケースがあります。 例)2007年10月20日 2007年5月2日 一桁の場合に頭に0をつけて、 年,月,日を外したYYYYDDMMとしたいのですが、 どうやったら良いのでしょうか? 宜しくお願い致します。 | ||||||||
|
投稿日時: 2007-07-27 11:10
いろいろな解決方法があると思います。
java初心者★さんがどのようなアプローチを取ったかを記載された方がよい気がします。 | ||||||||
|
投稿日時: 2007-07-27 11:11
説明が補足致します。
「YYYY年MM月DD日」は一つのデータとして String型に格納してます。 どうにかして、うまく切り分け結合しYYYYMMDDにしたいです。 宜しくお願い致します。 | ||||||||
|
投稿日時: 2007-07-27 11:15
kvip様
ありがとうございます。 下記まではイメージできるのですが、 そこからがうまくいきませんです。 --------------------------------------------- //日付のデータ String iYYYYMMDD = "2007年5月2日"; for(int i=0; i<iYYYYMMDD.length(); i++){ char charDate = iYYYYMMDD.charAt(i); if(?????){ } } --------------------------------------------- 宜しくお願い致します。 | ||||||||
|
投稿日時: 2007-07-27 11:27
今のものを生かすなら、StringBuilderを使って、もうひとつ文字列を作ると良いですよ。
必要なものだけ連結していけば良いです。 良く読まずに投稿してました。1桁のものが問題ということですね(汗 それならやっぱり、SimpleDateFormatか。 [ メッセージ編集済み 編集者: mio 編集日時 2007-07-27 12:38 ] | ||||||||
|
投稿日時: 2007-07-27 11:40
これって、画面上では一つのテキストフィールドで入力されるんでしょうか? #入力がめんどくさそうな気が・・・ 元々分かれているのに、一つのStringに放り込んでしまってから、YYYYMMDD形式にしようというなら、方向性が違うと思います。 元々一つなら仕方ないですが、その場合でもやり方は色々ありますね。 例えば置換しちゃうとか。 追記 私もSimpleDateFormat使うかな ![]() [ メッセージ編集済み 編集者: Odakaz 編集日時 2007-07-27 11:45 ] | ||||||||
|
投稿日時: 2007-07-27 11:41
その通りにアルゴリズムを書けばよいのでは? まずYYYYとDDとMMは切り出せるのですよね? String.indexOf()などで"月"とかの位置を算出して切り出す。ここはOK? で、Integer.parseInt()でintに直す。ここもOK? あとは
と言ったとおりにコード化すれば出来るでしょう? # ちなみに私ならjava.text.SimpleDateFormat#parse()を使う ![]() | ||||||||
|
投稿日時: 2007-07-27 11:44
http://sdc.sun.co.jp/java/docs/j2se/1.4/ja/docs/ja/api/index.html
|
1|2|3
次のページへ»