• 締切済み

日時を取得するプログラムは!?

私は今迄perlを使ってCGIを作り、サイトを作っていた者です。 これからはJavaだと悟り、勉強をはじめたばかりです。 問題は次の通りです。 目的:日時を取得する事 内容:下記のプログラムを使用して日時を取得する事が出来ました。が、年月日時分秒を取得できるのは良いのですが、年月日時分秒を別々に取得する方法が解りません。 例)月と日だけとか import java.util.Date; class PrintTheDate { public static void main(String arg[] ) { Date today= new Date(); System.out.println(today.toLocaleString() ); } } サンプルとなるようなプログラム、資料とがあれば教えて頂けないでしょうか?お願い致します。 失礼します。

  • aeic
  • お礼率10% (60/582)
  • Java
  • 回答数3
  • ありがとう数1

みんなの回答

noname#2494
noname#2494
回答No.3

まあ、他の方の回答でもよいと思うのですが、私のやり方を書いてみます。 私はこんな感じでやっています。 SimpleDateFormat dateYear = new SimpleDateFormat("yyyy"); SimpleDateFormat dateMonth = new SimpleDateFormat("MM"); SimpleDateFormat dateDay = new SimpleDateFormat("dd"); Date today = new Date(); System.out.println(dateYear.format(today)); System.out.println(dateMonth.format(today)); System.out.println(dateDay.format(today)); こうすると、それぞれ、年、月、日が別々に取得出来ます。

noname#30871
noname#30871
回答No.2

 java.util.Calendarというクラスがあります。 import java.util.Calendar; public class PrintTheDate { public static void main(String[] argv) { Calendar c = Calendar.getInstance(); System.out.print(c.get(Calendar.YEAR) + "年"); System.out.print(c.get(Calendar.MONTH) + 1 + "月"); // 1月=0, 2月=1, ... System.out.print(c.get(Calendar.DATE) + "日"); System.out.print(c.get(Calendar.HOUR_OF_DAY)+ "時"); System.out.print(c.get(Calendar.MINUTE) + "分"); System.out.print(c.get(Calendar.SECOND) + "秒"); } }  注意するポイントは、 (a) Calendarのインスタンスを得るには、newではなくCalendar.getInstance()を用いる。 (b) Calendar.MONTHで「月」が得られるが、N月に対してN-1が返る。 という点です。

  • wolv
  • ベストアンサー率37% (376/1001)
回答No.1

教えて!gooの質問検索で このカテゴリーの中から 「Date」を検索すると何件かヒットしますよ. 例えば, 年月日の表示 http://oshiete1.goo.ne.jp/kotaeru.php3?q=248560 時間表示について.... http://oshiete1.goo.ne.jp/kotaeru.php3?q=228623 他に,Javaの本家SUNのサイトに関する情報も得られました. http://java.sun.com/j2se/1.3/ja/docs/ja/api/index.html 参考になれば幸いです.

参考URL:
http://oshiete1.goo.ne.jp/kotaeru.php3?q=248560,http://oshiete1.goo.ne.jp/kotaeru.php3?q=228623

関連するQ&A

  • 変数を取得したい

    例えば、次のようなプログラムで1個の乱数を取得します。その取得した乱数の一番下の桁の数字(0~9)だけに着目し、変数iなどに値を取得するといったことは出来ますでしょうか? import java.util.*; public class RandomTest { public static void main(String[] args) { Random generator = new Random(); for(int i=0; i<1; i++){ int ran = generator.nextInt(); System.out.println(ran); } } }

    • ベストアンサー
    • Java
  • ファイル作成日時の取得

    JAVA初心者です。 ファイルの作成日時の取得方法が分からないので教えてください。 標準APIにはないようなので、外部コマンドを呼ばなくてはいけない事は分かりましたが、それ以上の事が分かりません。 ちなみにプログラム環境はWindowsXPです。 (dirコマンドでは、更新日時しか取れないです)

    • ベストアンサー
    • Java
  • プログラムについて

    1から453までのあいだでランダムに取得された225個の数字をいったんranに格納し、同様にran2,ran3,ran4にもランダムに取得された225個の数字を格納します。そこでran~ran4までで取得された数字の中から全部に共通して格納されている数字だけをran5に格納するようなプログラムは作成できないでしょうか? ranに格納するまでのプログラムは以下のように作成しました import java.util.*; public class RandomTest { public static void main(String[] args) { for(int i=0; i<225; i++){ int ran = (int)(Math.random() * 452)+1; System.out.println(ran); } } }

    • ベストアンサー
    • Java
  • プログラムの組み合わせ方

    java初心者です。 2つのプログラムを組み合わせて1つのプログラムにしたいんですが、イマイチ分かりません。 このプログラムと、 import java.io.*; class Hello2 {  public static void main(String[] args) throws IOException {   System.out.println("名前を入力してください");   BufferedReader br = new BufferedReader(new InputStreamReader(System.in));   String str = br.readLine();   System.out.println(str + "さん、こんにちは!");  } } このプログラムを、 import java.io.*; class Sanbai{  public static void main(String[] args) throws IOException {   System.out.println("好きな数を入力してください");   BufferedReader br = new BufferedReader(new InputStreamReader(System.in));   String str = br.readLine();   int x;   x = Integer.parseInt(str);   System.out.println("あなたの入力した数:" + x);   System.out.println("その3倍の数:" + (x*3));  } } 組み合わせて1つのプログラムにするにはどうしたらいいですか?(>_<)

    • ベストアンサー
    • Java
  • 入力された年月からその月の末日を取得する

    import java.util.*; class Sample { public static void main(String[] args) { System.out.println(args[0]); Calendar cal = Calendar.getInstance(); cal.set(2000,1,1); int y = cal.get(Calendar.YEAR); int m = cal.get(Calendar.MONTH) + 1; int last = cal.getActualMaximum(Calendar.DATE); System.out.print(y + "年" + m + "月の末日は "); System.out.println(last + "日です"); } } で、2000年2月の末日を取得することが出来るのはわかったのですが プログラム上で年月の入力を促してその月の末日を取得するにはどうすればいいのでしょうか? (プログラム実行例) C:\JAVA\SAMPLE>java Sample 2009 2 2009年2月の末日は 28です ↑のようにプログラム上で年 月を入力して実行し、末日を取得したいのですが・・・ 多分この場合、入力数値などに対する例外処理や閏年の処理などもやらないとダメだと思いますがよくわかりません

    • ベストアンサー
    • Java
  • javaのプログラムの質問です

    2つの時間を取得し、それらの時差を計算しそれに*300をし結果を出力するプログラムを作っています。 workspace.java package org.parking.java; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.*; class Parking { SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss"); Date dateTo1 = null; Date dateTo2 = null; private long dayDiff; public Parking() { try{ dateTo1 = sdf.parse("2017/09/14 10:00:00"); dateTo2 = sdf.parse("2017/09/15 09:00:00"); System.out.println("パーキングシステムを作りました。"); } catch (ParseException e){ e.printStackTrace(); } } public void setParking(Date dateTo1,Date dateTo2)// { long dateTimeTo = dateTo1.getTime(); long dateTimeFrom = dateTo2.getTime(); this.dayDiff = (dateTimeFrom - dateTimeTo)/(1000*60*60); } public void show() { System.out.println("日数(FROM) : " + sdf.format(dateTo1)); System.out.println("日数(TO) : " + sdf.format(dateTo2)); System.out.println("差分時間: " + this.dayDiff); System.out.println("納車してから"+ this.dayDiff +"時間が経ちましたので料金は"+ (this.dayDiff*300) +"となります。"); } } Parkingsub.java package org.parking.java; class Sample1 { public static void main(String[] args) { Parking parking1 = new Parking(); parking1.show(); } }  これで一応実行はできるんですけど、実行結果が パーキングシステムを作りました。 日数(FROM) : 2017/09/14 10:00:00 日数(TO) : 2017/09/15 09:00:00 差分時間: 0 納車してから0時間が経ちましたので料金は0となります。  となってしまうんです。いろいろやってみたんですがなかなか上手く行かなくて・・・。どなたかご教授願えませんしょうか。

    • ベストアンサー
    • Java
  • Javaプログラミング1001Tipsより。

    Javaプログラミング1001Tipsの書籍にある例文をコンパイルしようとすると。 注:practice.javaは推奨されないAPIを使用またはオーバーライドしています。 注:詳細については-deprecationオプションをしていして再コンパイルしてください。 というエラーがでます。普通にコンパイルして実行するだけでは駄目なのでしょうか? import java.util.Date; class practice { public static void main(String arg[]) { Date now= new Date(); System.out.println(now.toGMTString().substring(12)); System.out.println(now.getHours() + ":" + now.getMinutes()); } }

  • プログラムの合体。

    jump7799_4836さん 2018/7/2103:34:44 public class Test2 { public static int メソッド () { System.out.println("メソッド()が呼ばれました"); return 0; } public static int メソッド (int i) { System.out.println("メソッド(int i)が呼ばれました"); return i; } public static int メソッド (int i, int j) { System.out.println("メソッド(int i, int j)が呼ばれました"); return i; } public static int メソッド (short s) { System.out.println("メソッド(short s)が呼ばれました"); return s; } public static int メソッド (double d) { System.out.println("メソッド(double d)が呼ばれました"); return (int) d; } } public メソッド class Test2 { public メソッド static void main(String[] args) { Test2.メソッド (); Test2.メソッド (1); Test2.メソッド (1,2); Test2.メソッド (1.1); Test2.メソッド ((short) 1); Test2.メソッド ((double)1); } } kouzou@GD348ZZD9:/WORK$ javac Test2.java Test2.java:29: エラー: class、interfaceまたはenumがありません public メソッド class Test2 { ^ Test2.java:30: エラー: <identifier>がありません public メソッド static void main(String[] args) { ^ エラー2個 2つのプログラムが合体することってあるのですか? いつもすみません。 解説のほど、宜しくお願い申し上げます。

    • ベストアンサー
    • Java
  • javaのプログラムについて

    java始めたばかりの者です。 class sample1 { public static void main(String[] args) { for(int i=1; i<=5; i++){ for(int j=0; j<i; j++){ System.out.println("*"); } System.out.println("\n"); } } } これを実行すると * * * * * * * * * * * * * * * こうなってしまい * ** *** **** ***** このようにするにはどうしたらいいのでしょうか??

    • ベストアンサー
    • Java
  • JavaScriptで、現在日時から100日後の日時を表示させるには?

    JavaScriptで、現在日時から100日後の日時を表示させるには? JavaScriptで、現在日時から100日後の日時を求め、表示させたいと思っています。 「現在日時を取得する方法」と、「それを表示形式へ変換する方法」は、わかっています。 しかし、「100日後の日時」を表示させる方法が分かりません。 もちろん、年・月・日をまたぐ場合にもちゃんと対応できることが前提です。 極力、単純な方法が理想です。 以下、コードです。ご教授よろしくお願いします。 function func() { var day = new Date(); var datestr = day.toLocaleString(); alert(datestr); }

専門家に質問してみよう