天気予報のアプリケーションにAPIを使用しています。このAPIが返すJSONは、「日付」という文字列型の"date": "2016-08-20"
を返します。しかし、私はその日を「水曜日」のように画面に書きたいと思っています。私はインターネット上でコンバージョンを探しますが、私の場合は解決策を見つけることができませんでした。誰もそれを行う方法を説明することはできますか?前もって感謝します。ところで、これはアンドロイドプロジェクトです。文字列の日付を日の文字列に変更する
答えて
あなたは、単に現在の日付のString
値を解析し、それからDate
オブジェクトを取得するには、2 SimpleDateFormat
TERS、
- 1を必要としています。
- そして2番目に
String
の値をDate
オブジェクトに設定してください。
出力
Saturday
コード
import java.util.*;
import java.text.*;
public class HelloWorld {
public static void main(String[] args) throws ParseException {
Date date = new SimpleDateFormat("yyyy-MM-dd").parse("2016-08-20");
String dayOfWeek = new SimpleDateFormat("EEEEE").format(date);
System.out.println(dayOfWeek);
}
}
OR - ワンラインコードから私たちは、読みやす
012を無視した場合うまくいきました。 –
@AhmetUrunそれがうまくいってうれしい。編集された答えもご覧ください。私は余分な 'Calendar'オブジェクトを使用しないことでそれを最適化しました。 –
これは役立つかもしれない、
String weekDay = "";
DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
Calendar cal = Calendar.getInstance();
cal.setTime(df.parse(yourDateAsStringHere));
int dayOfWeek= cal.get(Calendar.DAY_OF_WEEK);
if (Calendar.MONDAY == dayOfWeek) {
weekDay = "monday";
} else if (Calendar.TUESDAY == dayOfWeek) {
weekDay = "tuesday";
} else if (Calendar.WEDNESDAY == dayOfWeek) {
weekDay = "wednesday";
} else if (Calendar.THURSDAY == dayOfWeek) {
weekDay = "thursday";
} else if (Calendar.FRIDAY == dayOfWeek) {
weekDay = "friday";
} else if (Calendar.SATURDAY == dayOfWeek) {
weekDay = "saturday";
} else if (Calendar.SUNDAY == dayOfWeek) {
weekDay = "sunday";
}
これはコンパイルされず、 'new SimpleDateFormat(" EEEE ")の書式(new SimpleDateFormat(" yyyy-MM-dd "))を書くのに非常に長い方法です。 2016-08-20 "))'。 – Andreas
使用例えばSimpleDateFormat
クラス、:
try {
String inputStr = "2016-08-20";
Date inputDate = new SimpleDateFormat("yyyy-MM-dd").parse(inputStr);
String dayName = new SimpleDateFormat("EEEE").format(inputDate);
} catch (ParseException e) {
e.printStackTrace();
}
あなたは、文字列をトークン化するために、スプリットを使用することができますが、私はそれを行うための標準的な方法だからにDateFormatを使用して好みますプロセス:
String dateString ="2016-08-20";
SimpleDateFormat formatInput = new SimpleDateFormat("yyyy-MM-dd");
Date date = formatInput.parse(dateString);
SimpleDateFormat formatOutput = new SimpleDateFormat("EEEE");
String day = formatOutput.format(date);
アイディアはを作成していますインスタンスを文字列2016-08-20
に入力し、次にDate
インスタンスからインスタンスを作成して曜日を描画します。
- 1. Androidの日付文字列を日付オブジェクトに変換する
- 2. Excel:日付文字列変換の文字列
- 3. パースの日付文字列
- 4. Excelでテキスト日付文字列を日付に変換する
- 5. 日付文字列を日付に変換する
- 6. Excel VBA - 日付文字列を日付に変換する
- 7. Java:文字列を日付に変換
- 8. 文字列の日付の変換
- 9. 日付の文字列への変換
- 10. anglejsで日付文字列を別の日付形式に変更する
- 11. この日付文字列を長い文字列に変換するには?
- 12. Blackberry Java日付変換の文字列
- 13. 日付変換のVisual FoxPro文字列
- 14. 変換JSONの日付文字列
- 15. Grails - 日付変換時の文字列
- 16. 文字列の日付をMongoDBのISO日付に変更しますか?
- 17. 文字列をjava(複合文字列)の日付に変換する
- 18. QMLの日付文字列を時刻文字列に変換する
- 19. 日付を文字列から日付に変更するフォーマットを3
- 20. ハイブ日付文字列バリデーション
- 21. オラクル - 日付文字列
- 22. 日付文字列PHP
- 23. フォーマット文字列日付オブジェクト
- 24. AttributeConverter日付文字列
- 25. 日付時刻文字列
- 26. AngularJS指示文の文字列を日付に変換する
- 27. 日付を文字列として文字列に渡す
- 28. 文字列を日付に変換する不正な日付形式の文字列エラー 'DateValue'
- 29. ハイブで日付を文字列から日付に変更する
- 30. 文字列を日付に変換 - 日付検証
あなたが検索する必要のある変換はありません**代わりに** "Parsing" ** –
Okey私はそれを探します –
あなたが必要としているものだと思っています.... https://developer.android.com /reference/java/text/SimpleDateFormat.html – Opiatefuchs