
kukuk
App-Anbieter (kostenlos)
- 37
Ist es möglich festzustellen ob welcher Wochentag heute ist? Also Mo-Sonntag?
Mit freundlichen Grüßen
Mit freundlichen Grüßen
Folge dem Video um zu sehen, wie unsere Website als Web-App auf dem Startbildschirm installiert werden kann.
Anmerkung: this_feature_currently_requires_accessing_site_using_safari
Was für ein Googlekalender? Wozu Internet?ui_3k1 schrieb:Ob man dafür wirklich den Google Kalender braucht... Benötigt die App schon wieder Internet.
Calendar cal = new GregorianCalendar();
cal.setTime( new Date() ); // Datum von heute
int dayOfWeek = cal.get(Calendar.DAY_OF_WEEK);
#include "Date.h"
#include "iomanip"
Date::Date(int yy, Month mm, int dd) // Konstruktor-Definition
: y(yy), m(mm), d(dd) {
//if (!check()) throw Date::Invalid();
}
Date::Date() //STANDARDKONSTRUKTOR DEFAULTWERT
: y(1876), m(Jan), d(1) {
}
Date::~Date() {
}
int Date::get_y() const {
return y;
}
int Date::get_d() const {
return d;
}
std::string Date::toString(int k) const {
std::string s = "";
switch (k) {
case 1:
s = "Jan";
break;
case 2:
s = "Feb";
break;
case 3:
s = "Mrz";
break;
case 4:
s = "Apr";
break;
case 5:
s = "Mai";
break;
case 6:
s = "Jun";
break;
case 7:
s = "Jul";
break;
case 8:
s = "Aug";
break;
case 9:
s = "Sep";
break;
case 10:
s = "Okt";
break;
case 11:
s = "Nov";
break;
case 12:
s = "Dez";
break;
}
return s;
}
void Date::add_days() {
d++;
}
void Date::show_date() {
std::cout << get_y() << "-" << toString(m) << "-" << std::setfill('0') << std::setw(2) << get_d() << std::endl;
}
void Date::add_months(int mi) {
int mx = m;
std::string sm = "";
mx += mi;
sm = toString(mx);
if (!check()) throw Date::Invalid();
}
bool Date::check() {
//JAHR ZWISCHEN 1800 UND 2200
if (y > 2200 || y < 1800) {
// std::cout << "Datum zu weit in der Vergangenheit/Zukunft!" << std::endl;
return false;
}
//MONAT ZWISCHEN 1 UND 12
if (m > Dez || m < Jan) {
// std::cout << "Den " << m << ". Monat gibt es nicht!" << std::endl;
return false;
}
//MONATE MIT 30 TAGEN
switch (m) {
case Feb: // noch ohne Schaltjahre
if (d > 28) {
if (d == 30 || d == 31) {
// std::cout << "Der Februar hat maximal 29 Tage!" << std::endl;
return false;
}
if (y % 4 == 0 && y % 100 != 0 || y % 400 == 0) {
if (m == Feb && d == 29) {
// std::cout << "Genau! Schaltjahr hat den 29. Feb!" << std::endl;
return true;
}
} else {
// std::cout << "Kein Schaltjahr, daher auch kein 29. Feb!" << std::endl;
return false;
}
}
case Apr: case Jun: case Sep: case Nov:
if (d > 30) {
// std::cout << "Dieser Monat hat nie mehr als 30 Tage!" << std::endl;
return false;
}
default:
if (d > 31) {
// std::cout << "Ein Monat hat nie mehr als 31 Tage!" << std::endl;
return false;
}
}
// std::cout << "Dieser Tag existiert!" << std::endl;
return true;
}
bool Date::checkDayUp() {
switch (mx) {
case 2:
if (d > 27) {
if (d == 29 || d == 30) {
return false;
}
if (y % 4 == 0 && y % 100 != 0 || y % 400 == 0) {
if (mx == 2 && d == 28) {
return true;
}
} else {
return false;
}
}
case 4: case 6: case 9: case 11:
if (d > 29) {
return false;
}
default:
if (d > 30) {
return false;
}
}
return true;
}
bool Date::checkDayDown() {
switch (mx) {
case 2:
if (d < 2) {
return false;
}
case 4: case 6: case 9: case 11:
if (d < 2) {
return false;
}
default:
if (d < 2) {
return false;
}
}
return true;
}
bool Date::checkMonthUp() {
if (mx > 11 || mx < 1)
return false;
}
bool Date::checkMonthDown() {
if (mx > 12 || mx < 2)
return false;
}
bool Date::checkYear() {
if (y > 2200 || y < 1800)
return false;
}
int Date::compareTo(Date d1) {
Date d2;
d2.d = 18;
d2.m = Date::Mrz;
d2.y = 2000;
int valueOfDay1 = d1.d + (d1.m * 12) + (d1.y * 365);
int valueOfDay2 = d2.d + (d2.m * 12) + (d2.y * 365);
if (valueOfDay1 == valueOfDay2)
return 0;
if (valueOfDay1 < valueOfDay2)
return -1;
if (valueOfDay1 > valueOfDay2)
return 1;
}
int Date::get_month_for_calc() {
switch (Date::m) {
case Jan: return 1;
break;
case Feb: return 2;
break;
case Mrz: return 3;
break;
case Apr: return 4;
break;
case Mai: return 5;
break;
case Jun: return 6;
break;
case Jul: return 7;
break;
case Aug: return 8;
break;
case Sep: return 9;
break;
case Okt: return 10;
break;
case Nov: return 11;
break;
case Dez: return 12;
break;
}
}
void Date::inc_day(int howMany) {
mx = get_month_for_calc();
while (howMany > 0) {
if (checkDayUp()) {
d++;
} else if (checkMonthUp()) {
d = 1;
mx++;
} else if (checkYear()) {
mx = 1;
d = 1;
y++;
}
std::cout << get_y() << "-" << std::setfill('0') << std::setw(2) << toString(mx) << "-" << std::setfill('0') << std::setw(2) << get_d() << std::endl;
howMany--;
}
}
void Date::dec_day(int howMany) {
mx = get_month_for_calc();
while (howMany > 0) {
if (checkDayDown()) {
d--;
} else if (checkMonthDown()) {
mx--;
switch (mx) {
case 1: d = 31;
break;
case 2:
if (d == 28 && y % 4 == 0 && y % 100 != 0 || y % 400 == 0)
d = 29;
else
d = 28;
break;
case 3: d = 31;
break;
case 4: d = 30;
break;
case 5: d = 31;
break;
case 6: d = 30;
break;
case 7: d = 31;
break;
case 8: d = 31;
break;
case 9: d = 30;
break;
case 10: d = 31;
break;
case 11: d = 30;
break;
case 12: d = 31;
break;
}
} else if (checkYear()) {
mx = 12;
d = 31;
y--;
}
std::cout << get_y() << "-" << std::setfill('0') << std::setw(2) << toString(mx) << "-" << std::setfill('0') << std::setw(2) << get_d() << std::endl;
howMany--;
}
}
Date::Invalid::Invalid() {
msg = "Invalid aufgerufen!";
}
Date::Invalid::~Invalid() {
}
std::string Date::Invalid::what() {
return msg;
}
ui_3k1 schrieb:Und wie du selbst sagst "Das ist ein Dreizeiler" -> stimmt! Und der Lernerfolg geht bei dem Dreizeiler gegen Null, mehr als ein paar Initialisierungen kann ich dem Code nicht entnehmen.
ui_3k1 schrieb:Okay, sehe es gerade. Naja, jetzt hab ich wieder was gelernt: nämlich was es für eine tolle Java-Lib gibt.![]()
Calendar cal = new GregorianCalendar();
int month = cal.get(Calendar.MONTH);
int hour24 = cal.get(Calendar.HOUR_OF_DAY);
int day = cal.get(Calendar.DAY_OF_WEEK);
SimpleDateFormat dateFormat = new SimpleDateFormat(
"HHmm");
int uhrzeit = Integer.parseInt(dateFormat.format(cal.getTime()));
if (day > 1 && day < 7 && uhrzeit <= 1530 && uhrzeit >= 700){
außerhalb_der_geschäftszeiten = false;
}else{
außerhalb_der_geschäftszeiten = true;
}
if (day ==6 && uhrzeit > 1430){
außerhalb_der_geschäftszeiten = true;
}
if (Global.stadt.equals("essen")){
if (day == 6 && uhrzeit > 1230){
außerhalb_der_geschäftszeiten = true;
}
}
kosmus schrieb:Eigentlich ist der gregorianCalender gar nicht so toll, deshalb wurde die Datums Berechnung in Java 8 auch erneuert![]()
Aber mal ernsthaft wir sind nicht hier um Leute zu erziehen und so posts wie StefMa "ja" sind so nützlich wie ein Lutscher der nach Sch* schmeckt. Gerade bei offensichtlich leichten Problemen sollte man so wie Jarny und KatyB eine konkrete Antwort geben und wenn kukuk mehr zu dem Thema wissen will, wird er/sie schon fragen. Ich finde es schade das StefMa auch noch mehr danke Klicks damit bekommt als die anderen beiden zusammen...