■ 国際化対応フォーマット、パターン文字フォーマットで日付を出力する方法

原创 2004年06月24日 07:40:00
■ 国際化対応フォーマット、パターン文字フォーマットで日付を出力する方法

 1.国際化対応フォーマットについて  DateFormatを利用すると容易に日付をフォーマットすることができます。
  国際化フォーマットは、各国の表記にあわせて日付を出力する方法で、日本はもちろんアメリカ、
  ドイツ、フランスなど外国で使用している日付の表示を行うことができます。

  (1) 年月日フォーマット
     getDateInstance(【表示形式】,【指定国】);

  (2) 時刻フォーマット
     getTimeInstance(【表示形式】,【指定国】);

  (3) 年月日と時刻フォーマット
     getDateTimeInstance(【年月日の表示形式】,【時刻の表示形式】,【指定国】);

  【表示形式】には、“FULL”、“MEDIUM”、“SHORT”のいずれかをセットします。
  【指定国】には、“JAPAN”、“US”などの国を指定します。

  注1 指定したLocaleで、?文字が出力された場合は、対応するフォントがインストールされていません。
     どうしても表示したい場合はフォントをインストールして下さい。

 2.パターン文字フォーマットについて  SimpleDateFormatを利用することにより、任意の日付にフォーマットすることができます。
  a~z、A~Zなどはパターン文字と認識されるため、無効な値を設定するとエラーになります。
  また、大文字小文字で意味が異なるので注意してください。

パターン文字一覧
タイムゾーン z 西暦 y M d 曜日 E
24時間 H 12時間 h m s ミリ秒 S



■サンプルソース
import java.io.*;
import java.text.*;
import java.util.*;
import java.util.Date;
class DateFormatSample {
public static void main (String args[]) {

// 日付を取得
Date date = new Date();
DateFormat dateformat;
System.out.println("-----------------------------------------------------------------");
System.out.println("設定なしの日付 |" + date);
System.out.println("-----------------------------------------------------------------");
System.out.println("引数1 | 引数2|結果");
System.out.println("-----------------------------------------------------------------");
//----------------------------------------------------------------------------//
// 年月日フォーマット
// getDateInstance(引数1,引数2);
//----------------------------------------------------------------------------//
dateformat = DateFormat.getDateInstance(DateFormat.FULL, Locale.JAPAN);
System.out.println("FULL | JAPAN |" + dateformat.format(date));

dateformat = DateFormat.getDateInstance(DateFormat.MEDIUM, Locale.JAPAN);
System.out.println("MEDIUM | JAPAN |" + dateformat.format(date));

dateformat = DateFormat.getDateInstance(DateFormat.SHORT, Locale.JAPAN);
System.out.println("SHORT | JAPAN |" + dateformat.format(date));

dateformat = DateFormat.getDateInstance(DateFormat.FULL, Locale.US);
System.out.println("FULL | US |" + dateformat.format(date));

dateformat = DateFormat.getDateInstance(DateFormat.MEDIUM, Locale.US);
System.out.println("MEDIUM | US |" + dateformat.format(date));

dateformat = DateFormat.getDateInstance(DateFormat.SHORT, Locale.US);
System.out.println("SHORT | US |" + dateformat.format(date));

//----------------------------------------------------------------------------//
// 時刻フォーマット
// getTimeInstance(引数1,引数2);
//----------------------------------------------------------------------------//

System.out.println("-----------------------------------------------------------------");

dateformat = DateFormat.getTimeInstance(DateFormat.FULL, Locale.JAPAN);
System.out.println("FULL | JAPAN |" + dateformat.format(date));

dateformat = DateFormat.getTimeInstance(DateFormat.MEDIUM, Locale.JAPAN);
System.out.println("MEDIUM | JAPAN |" + dateformat.format(date));

dateformat = DateFormat.getTimeInstance(DateFormat.SHORT, Locale.JAPAN);
System.out.println("SHORT | JAPAN |" + dateformat.format(date));

dateformat = DateFormat.getTimeInstance(DateFormat.FULL, Locale.US);
System.out.println("FULL | US |" + dateformat.format(date));

dateformat = DateFormat.getTimeInstance(DateFormat.MEDIUM, Locale.US);
System.out.println("MEDIUM | US |" + dateformat.format(date));

dateformat = DateFormat.getTimeInstance(DateFormat.SHORT, Locale.US);
System.out.println("SHORT | US |" + dateformat.format(date));

//----------------------------------------------------------------------------//
// 年月日と時刻フォーマット
// getDateTimeInstance(引数1,引数2,引数3);
//----------------------------------------------------------------------------//
System.out.println("-----------------------------------------------------------------");

dateformat = DateFormat.getDateTimeInstance(DateFormat.FULL, DateFormat.FULL, Locale.JAPAN);
System.out.println("FULL | JAPAN |" + dateformat.format(date));

dateformat = DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM, Locale.JAPAN);
System.out.println("MEDIUM | JAPAN |" + dateformat.format(date));

dateformat = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT, Locale.JAPAN);
System.out.println("SHORT | JAPAN |" + dateformat.format(date));

dateformat = DateFormat.getDateTimeInstance(DateFormat.FULL, DateFormat.FULL, Locale.US);
System.out.println("FULL | US |" + dateformat.format(date));

dateformat = DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM, Locale.US);
System.out.println("MEDIUM | US |" + dateformat.format(date));

dateformat = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT, Locale.US);
System.out.println("SHORT | US |" + dateformat.format(date));

//----------------------------------------------------------------------------//
// パターン文字フォーマット
// SimpleDateFormat("パターン文字");
//----------------------------------------------------------------------------//

System.out.println("-----------------------------------------------------------------");
System.out.println("パターン文字フォーマット");
System.out.println("-----------------------------------------------------------------");

dateformat = new SimpleDateFormat("yyyyMMddHHmmss");
System.out.println("yyyyMMddHHmmss |" + dateformat.format(date));

dateformat = new SimpleDateFormat("yyyy/MM/dd (EE) HH:mm:ss.SSSSS");
System.out.println("yyyy/MM/dd (EE) HH:mm:ss.SSSSS|" + dateformat.format(date));

System.out.println("-----------------------------------------------------------------");

// 分秒を12:34に固定した場合
dateformat = new SimpleDateFormat("yyyyMMddHH1234");
System.out.println("yyyyMMddHH1234 |" + dateformat.format(date));

dateformat = new SimpleDateFormat("yyyy/MM/dd (EE) HH:12:34.SSSSS");
System.out.println("yyyy/MM/dd (EE) HH:12:34.SSSSS|" + dateformat.format(date));

System.out.println("-----------------------------------------------------------------");

// ちなみに、こんな風にもできるんです。
dateformat = new SimpleDateFormat("yyyy年MM月dd日 EE曜日 (^_-)-☆");
System.out.println("yyyy年MM月dd日 EE曜日 (^_-)-☆|" + dateformat.format(date));
}
}
■サンプルの実行結果
-----------------------------------------------------------------
設定なしの日付 |Mon Jan 13 18:17:36 JST 2003
-----------------------------------------------------------------
引数1 | 引数2|結果
-----------------------------------------------------------------
FULL | JAPAN |2003年1月13日
MEDIUM | JAPAN |2003/01/13
SHORT | JAPAN |03/01/13
FULL | US |Monday, January 13, 2003
MEDIUM | US |Jan 13, 2003
SHORT | US |1/13/03
-----------------------------------------------------------------
FULL | JAPAN |18時17分36秒JST
MEDIUM | JAPAN |18:17:36
SHORT | JAPAN |18:17
FULL | US |6:17:36 PM JST
MEDIUM | US |6:17:36 PM
SHORT | US |6:17 PM
-----------------------------------------------------------------
FULL | JAPAN |2003年1月13日 18時17分36秒JST
MEDIUM | JAPAN |2003/01/13 18:17:36
SHORT | JAPAN |03/01/13 18:17
FULL | US |Monday, January 13, 2003 6:17:36 PM JST
MEDIUM | US |Jan 13, 2003 6:17:36 PM
SHORT | US |1/13/03 6:17 PM
-----------------------------------------------------------------
パターン文字フォーマット
-----------------------------------------------------------------
yyyyMMddHHmmss |20030113181736
yyyy/MM/dd (EE) HH:mm:ss.SSSSS|2003/01/13 (月) 18:17:36.00434
-----------------------------------------------------------------
yyyyMMddHH1234 |20030113181234
yyyy/MM/dd (EE) HH:12:34.SSSSS|2003/01/13 (月) 18:12:34.00434
-----------------------------------------------------------------
yyyy年MM月dd日 EE曜日 (^_-)-☆|2003年01月13日 月曜日 (^_-)-☆
-以上-

JSP页面跳转中的问题

 页面调转有如下几种方式1   RequestDispatcher.forward()2  response.sendRedirect()3   4  修改HTTP header的Location属性...
  • tsing_dao
  • tsing_dao
  • 2006年07月20日 18:43
  • 1693

AOJ 0033 ball+AOH 0118Property Distribution (DFS)

Description タナカ氏が HW アールの果樹園を残して亡くなりました。果樹園は東西南北方向に H×W の区画に分けられ、区画ごとにリンゴ、カキ、ミカンが植えられています。タナカ氏はこん...
  • aaaaacmer
  • aaaaacmer
  • 2015年06月03日 10:44
  • 707

真正中文攻略之 Scarlett~スカーレット(攻略、存档)

提到猫社或是猫猫软件你会想起些什么?号称三色的银色、水色、朱色(朱-AKA-)?弹珠汽水Lamune?120日元系列?片冈?亦或是…2006的终结?想必大家都已熟知GGM将120日元系列移植PC并进行...
  • luozhuang
  • luozhuang
  • 2008年12月28日 14:25
  • 26771

tomcat4.1 session load IOException

2008-07-25 15:03:47 StandardManager[/vaistaff] 持続されたセッションをロード中のIOExceptionです: java.io.EOFExceptionja...
  • cui_yihao
  • cui_yihao
  • 2008年07月25日 16:23
  • 1195

業務システムの開発ドキュメント標準化 第4回:詳細設計書(前半)

機能設計書のドキュメント体系    設計ドキュメント標準「DUNGEON」で定義されている設計工程のアウトプットは表1の通りです。「DUNGEON」では、基本設計書で骨組みを定義...
  • newpiaoyun
  • newpiaoyun
  • 2014年11月27日 12:07
  • 2129

[150327]Panical Confusion(パニカル・コンフュージョン)【日文硬盘版】[带全CG存档&攻略+日本语启动+打开存档补丁]

【游戏原名】:パニカル?コンフュージョン 【别名】:Panical Confusion 【发售日期】:2015-03-27 【游戏类型】:恋爱ADV 【游戏厂商】:エスクード ...
  • wangzi867258173
  • wangzi867258173
  • 2016年02月21日 21:02
  • 3675

攻略和中文翻译之メンアットワーク!4 ~ハンター達よ永遠に~猎人们的永远

唉。。。今天又删动画和游戏了,不过是下ego的游戏还是值得的建议下载メンアットワーク!4 ~ハンター達よ永遠に~ 特別版还是这个特别版好啊,一下子就把1~4代游戏收齐了,MS现在下1~3代的光盘镜像都...
  • luozhuang
  • luozhuang
  • 2008年07月11日 11:55
  • 5938

PL/SQL 事前定義例外一覧

http://www.shift-the-oracle.com/plsql/exception/predefined-exception.html PL/SQL 事前定義例外一覧 PL/SQL にはエ...
  • baggio328
  • baggio328
  • 2009年03月17日 09:30
  • 1251

INITIAL-D-FIRST STAGE - 第19话 『決着!スーパードリフト』

 适应了碓冰山路的拓海开始逐渐追近,因为AE86追得太近的缘故,使得真子无法以自己的节奏进行比赛,然而就是在这样不利的情况下真子仍然发挥出超越平时的技术,两辆车继续在高速之中僵持。然而,如果真的说起来...
  • ddkiller
  • ddkiller
  • 2007年10月23日 08:50
  • 289

other-IE セキュリティの設定

ツール → インターネット オプション → セキュリティ → 信頼済みサイト → ラベルのカスタマイズ → ActiveX コントロールとプラグイン → スクリプトを実行しても安全だとマークされていな...
  • indieinside
  • indieinside
  • 2012年07月11日 10:56
  • 976
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:■ 国際化対応フォーマット、パターン文字フォーマットで日付を出力する方法
举报原因:
原因补充:

(最多只允许输入30个字)