Advertisement
Guest User

Untitled

a guest
Oct 31st, 2014
137
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.61 KB | None | 0 0
  1. import java.util.Scanner;
  2.  
  3.  
  4. public class Datownik
  5. {
  6. private int day;
  7. private int month;
  8. private int year;
  9. private short format;
  10. private String podanaData;
  11.  
  12. Scanner wejscie = new Scanner(System.in);
  13.  
  14. public Datownik()
  15. {
  16. System.out.println("Witaj, podaj date:");
  17. while(true)
  18. {
  19. podanaData = wejscie.next();
  20.  
  21. if(podanaData.length()>=8 && podanaData.length()<=10)
  22. {
  23. if( (podanaData.charAt(1) == '.' || podanaData.charAt(2) == '.') || (podanaData.charAt(1) == '-' || podanaData.charAt(2) == '-') || (podanaData.charAt(1) == '/' || podanaData.charAt(2) == '/') )
  24. {
  25. String temp[] = null;
  26. if(podanaData.charAt(1) == '.' || podanaData.charAt(2) == '.') temp = podanaData.split("\\.",3);
  27. if(podanaData.charAt(1) == '-' ||podanaData.charAt(2) == '-') temp = podanaData.split("\\-",3);
  28. if(podanaData.charAt(1) == '/' || podanaData.charAt(2) == '/') temp = podanaData.split("/",3);
  29.  
  30. //System.out.println(temp[0]+" "+temp[1]+" "+temp[2]);
  31.  
  32. int checkDay = Integer.parseInt(temp[0]);
  33. int checkMonth = Integer.parseInt(temp[1]);
  34. int checkYear = Integer.parseInt(temp[2]);
  35.  
  36. boolean by = false;
  37. boolean bm = false;
  38. boolean bd = false;
  39.  
  40. if(checkYear>0)
  41. {
  42. year = checkYear;
  43. by = true;
  44. }
  45. if( (checkMonth>0 && checkMonth <=12) && (checkDay>0 && checkDay<=31) )
  46. {
  47. month = checkMonth;
  48. day = checkDay;
  49. bm = true;
  50. bd = true;
  51. }
  52. else if( (checkDay>0 && checkDay <=12) && (checkMonth>0 && checkMonth<=31) )
  53. {
  54. month = checkDay;
  55. day = checkMonth;
  56. bm = true;
  57. bd = true;
  58. }
  59.  
  60. //System.out.println(day+"."+month+"."+year);
  61. if(by == true && bm == true && bd == true) break;
  62. System.out.println("Nieprawidlowa data");
  63. continue;
  64. }
  65.  
  66. if(podanaData.charAt(4) == '.' || podanaData.charAt(4) == '-' || podanaData.charAt(4) == '/')
  67. {
  68. String temp[] = null;
  69. if(podanaData.charAt(4) == '.') temp = podanaData.split("\\.",3);
  70. if(podanaData.charAt(4) == '-') temp = podanaData.split("\\-",3);
  71. if(podanaData.charAt(4) == '/') temp = podanaData.split("/",3);
  72.  
  73. //System.out.println(temp[0]+" "+temp[1]+" "+temp[2]);
  74.  
  75. int checkDay = Integer.parseInt(temp[2]);
  76. int checkMonth = Integer.parseInt(temp[1]);
  77. int checkYear = Integer.parseInt(temp[0]);
  78.  
  79. boolean by = false;
  80. boolean bm = false;
  81. boolean bd = false;
  82.  
  83. if(checkYear>0)
  84. {
  85. year = checkYear;
  86. by = true;
  87. }
  88. if( (checkMonth>0 && checkMonth <=12) && (checkDay>0 && checkDay<=31) )
  89. {
  90. month = checkMonth;
  91. day = checkDay;
  92. bm = true;
  93. bd = true;
  94. }
  95. else if( (checkDay>0 && checkDay <=12) && (checkMonth>0 && checkMonth<=31) )
  96. {
  97. month = checkDay;
  98. day = checkMonth;
  99. bm = true;
  100. bd = true;
  101. }
  102.  
  103. //System.out.println(day+"."+month+"."+year);
  104. if(by == true && bm == true && bd == true) break;
  105. System.out.println("Nieprawidlowa data");
  106. continue;
  107. }//else
  108. }//if glowny
  109. } //while
  110. }
  111.  
  112. public Datownik(String podana)
  113. {
  114.  
  115. }
  116.  
  117. public void checkDate()
  118. {
  119. while(true)
  120. {
  121. if(podanaData.length()>=8 && podanaData.length()<=10)
  122. {
  123. if( (podanaData.charAt(1) == '.' || podanaData.charAt(2) == '.') || (podanaData.charAt(1) == '-' || podanaData.charAt(2) == '-') || (podanaData.charAt(1) == '/' || podanaData.charAt(2) == '/') )
  124. {
  125. String temp[] = null;
  126. if(podanaData.charAt(1) == '.' || podanaData.charAt(2) == '.') temp = podanaData.split("\\.",3);
  127. if(podanaData.charAt(1) == '-' ||podanaData.charAt(2) == '-') temp = podanaData.split("\\-",3);
  128. if(podanaData.charAt(1) == '/' || podanaData.charAt(2) == '/') temp = podanaData.split("/",3);
  129.  
  130. //System.out.println(temp[0]+" "+temp[1]+" "+temp[2]);
  131.  
  132. int checkDay = Integer.parseInt(temp[0]);
  133. int checkMonth = Integer.parseInt(temp[1]);
  134. int checkYear = Integer.parseInt(temp[2]);
  135.  
  136. boolean by = false;
  137. boolean bm = false;
  138. boolean bd = false;
  139.  
  140. if(checkYear>0)
  141. {
  142. year = checkYear;
  143. by = true;
  144. }
  145. if( (checkMonth>0 && checkMonth <=12) && (checkDay>0 && checkDay<=31) )
  146. {
  147. month = checkMonth;
  148. day = checkDay;
  149. bm = true;
  150. bd = true;
  151. }
  152. else if( (checkDay>0 && checkDay <=12) && (checkMonth>0 && checkMonth<=31) )
  153. {
  154. month = checkDay;
  155. day = checkMonth;
  156. bm = true;
  157. bd = true;
  158. }
  159.  
  160. //System.out.println(day+"."+month+"."+year);
  161. if(by == true && bm == true && bd == true) break;
  162. System.out.println("Nieprawidlowa data");
  163. continue;
  164. }
  165.  
  166. if(podanaData.charAt(4) == '.' || podanaData.charAt(4) == '-' || podanaData.charAt(4) == '/')
  167. {
  168. String temp[] = null;
  169. if(podanaData.charAt(4) == '.') temp = podanaData.split("\\.",3);
  170. if(podanaData.charAt(4) == '-') temp = podanaData.split("\\-",3);
  171. if(podanaData.charAt(4) == '/') temp = podanaData.split("/",3);
  172.  
  173. //System.out.println(temp[0]+" "+temp[1]+" "+temp[2]);
  174.  
  175. int checkDay = Integer.parseInt(temp[2]);
  176. int checkMonth = Integer.parseInt(temp[1]);
  177. int checkYear = Integer.parseInt(temp[0]);
  178.  
  179. boolean by = false;
  180. boolean bm = false;
  181. boolean bd = false;
  182.  
  183. if(checkYear>0)
  184. {
  185. year = checkYear;
  186. by = true;
  187. }
  188. if( (checkMonth>0 && checkMonth <=12) && (checkDay>0 && checkDay<=31) )
  189. {
  190. month = checkMonth;
  191. day = checkDay;
  192. bm = true;
  193. bd = true;
  194. }
  195. else if( (checkDay>0 && checkDay <=12) && (checkMonth>0 && checkMonth<=31) )
  196. {
  197. month = checkDay;
  198. day = checkMonth;
  199. bm = true;
  200. bd = true;
  201. }
  202.  
  203. //System.out.println(day+"."+month+"."+year);
  204. if(by == true && bm == true && bd == true) break;
  205. System.out.println("Nieprawidlowa data");
  206. continue;
  207. }//else
  208. }//if glowny
  209. } //while
  210.  
  211.  
  212.  
  213. }
  214.  
  215.  
  216.  
  217.  
  218. public void setFormat()
  219. {
  220. System.out.println("Wybierz separator:\n1.Kropka\n2.Myślnik\n3.Backslash");
  221. short temp;
  222. temp = wejscie.nextShort();
  223. if(temp>0 && temp<4) format = temp;
  224. }
  225.  
  226. public void viewDate()
  227. {
  228. if(format<0 && format>3) System.out.println("Nie zdefiniowano formatu);");
  229. if(format==1) System.out.println(day+"."+month+"."+year);
  230. if(format==2) System.out.println(day+"-"+month+"-"+year);
  231. if(format==3) System.out.println(day+"/"+month+"/"+year);
  232. }
  233.  
  234.  
  235.  
  236. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement