Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 21 odgovor
  • 7.338 pregleda

Najnovija ↓

c# problem sa sabiranjem vremena 23.01.2008. u 14:19 · pre 228 meseci #1
Jel zna neko kako da sabiram i oduzimam vreme?
Imam dva textbox-a i u njima vreme u formatu hh:mm
Kako da sada te vrednosti saberem ili oduzmem?
Re: c# problem sa sabiranjem vremena 23.01.2008. u 14:25 · pre 228 meseci #2
Konvertuj vrednosti i textBox-ova u DateTime. DateTime ima metode AddHours i AddMinutes. Ili drugi textBox konvertuj u timeStamp tip i koristi Add metodu od DateTime.
Re: c# problem sa sabiranjem vremena 23.01.2008. u 16:19 · pre 228 meseci #3
hvala... problem je samo sto ne znam kako to da uradim.
Ako mozes neki primer da postujes kako da konvertujem...
Re: c# problem sa sabiranjem vremena 23.01.2008. u 17:36 · pre 228 meseci #5
hvala...
ma ne znam ja msdn da koristim... meni treba samo ovo da zavrsim i toliko, necu se baviti ovim:)
hvala jos jednom.
Re: c# problem sa sabiranjem vremena 23.01.2008. u 18:40 · pre 228 meseci #6
a moze i vako:

Code:

public string Saberi(String a, string b)
      {
         int ia = System.Convert.ToInt32(a.Split(':')[0]) * 60 + System.Convert.ToInt32(a.Split(':')[1]);
         int ib = System.Convert.ToInt32(b.Split(':')[0]) * 60 + System.Convert.ToInt32(b.Split(':')[1]);
         int c = ia + ib;

         return String.Format("{0:D2}:{1:D2}", c / 60, c % 60);
      }

usput nije lose izvrsiti proveru da li ulazni stringovi zadovoljavaju format (npr regex klasom)
i treba hvatati izuzetke (Convert.ToInt32 ih baca)
Re: c# problem sa sabiranjem vremena 23.01.2008. u 19:24 · pre 228 meseci #7
DateTime je suvise nezgodan za ovu primenu jer ukljucuje i obavezan datum. Predrag ti je dao deo resenja, preko TimeStampa, sa tim sto mozes komotno da koristis operatore + i - koje timestamp podrzava da sabiras i oduzimas vremena:

Code:


            TimeSpan x1 = TimeSpan.Parse("12:11");
            TimeSpan x2 = TimeSpan.Parse("2:15");

            TimeSpan add = x1 + x2;
            TimeSpan sub = x1 - x2;

            Console.WriteLine(add);
            Console.WriteLine(sub);


Izlaz:
14:26:00
09:56:00
Potpis
Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog
naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji
je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan,
sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv - Z.Đinđić
Re: c# problem sa sabiranjem vremena 25.01.2008. u 16:29 · pre 228 meseci #9
... jos jedan problem sa vremenom... tj. datumom.
Imam datetimepicker i hocu da iz njega upisem vreme u .mdb bazu, ali nece da se upise.
Pokusavao sam sledece
datetime vreme = datetime.parse(datetimepicker.text.tostring());
datetime vreme = datetime.parse(datetimepicker.value.toshortdatestring());
datetime vreme = datetime.parse(datetimepicker.value.tostring());

pokusavao sam i samo text iz datetimepicker da stavim u bazu
"insert into datum (vreme) values (" + datetimepicker.text.tostring() + ")";
"insert into datum (vreme) values (" + datetimepicker.text + ")";
"insert into datum (vreme) values (" + datetimepicker.value.tostring() + ")";

pokusavao sam i mnogo drugih gluposti koje su mi padale na pamet... ali bezuspesno.

Moze li neko da mi da konkretno i jednostavno resenje( ako jednostavno postoji)
kao npr. sto je mmix pokazao sa timestamp, samo sto nema datestamp;)

u bazu sam postavio date\time za kolonu vreme, pokusao sam i sa text.
Re: c# problem sa sabiranjem vremena 25.01.2008. u 16:44 · pre 228 meseci #10
da bi upisivao u bazu, prvo moras da se nakacis (pogledaj malo ado.net, a sigurno ima i po forumu). Otprilike ovako nekako treba da izgleda...

Code:

OleDbConnection conn = new OleDbConnection();
conn.ConnectionString = "  "  // vidi na www.connectionstrings.com konekcioni string za access

OleDbCommand komanda = new OleDbCommand();
komanda.CommandText = "insert into ...";
komanda.Connection = conn;

try
{
conn.Open();
komanda.ExecuteNonQuery();
}
catch (Exception e)
{
MessageBox.Show(e.Message);
}
finaly
{
conn.Close();
}
Re: c# problem sa sabiranjem vremena 25.01.2008. u 16:50 · pre 228 meseci #11
konektujem se ja na bazu, sve je to ok.
mogu da upisujem iz textbox ili listbox u bazu ali nemogu da upisem iz datetimepicker

mogu ja da napravim i tri comboboxa, jedan za dan, drugi za mesec treci za godinu ali ja bih hteo preko
datetimepicker.
Re: c# problem sa sabiranjem vremena 25.01.2008. u 17:05 · pre 228 meseci #12
datetimepicker.Value.Date (pored Date imas jos varijanti: Day, Hour, Year...)
Re: c# problem sa sabiranjem vremena 25.01.2008. u 17:44 · pre 228 meseci #13
nece...
gresku sam uploadovao uz poruku

string komStringOdmor = "insert into Odmor (JMBG, Od, Do) values (" + comboBox1.Text + "," + dateTimePicker1.Value.Date + "," + dateTimePicker2.Value.Date + ")";


ovu gresku mi pokazuje i na prethodne pokusaje.
Re: c# problem sa sabiranjem vremena 25.01.2008. u 17:56 · pre 228 meseci #14
Datume u queryu ogradi sa tarabama (#). Mozda ce ti praviti problem zbog formata datuma (dd.MM.yyyy). Najbolje je da stavis parametre i nema glava da te boli ;)
Re: c# problem sa sabiranjem vremena 26.01.2008. u 16:05 · pre 228 meseci #18
Hoce li neko da mi pomogne da resim ovaj zadnji problem?

imam 4 tabele, login, logof, ulaz i izlaz. Login i log of se uvek popunjavaju a ulaz i izlaz samo
kada neko privatno napusti firmu, znaci upisuje se vreme kad izadje i udje.

e sad ja trebam da napravim da iz aplikacije, koju ste mi pomogli da napravim, vidim radno vreme radnika
za 1 dan i za mesec dana.

u sve 4 tabele se upisuje vreme u formatu hh:mm, u pitanju je .mdb baza.

znaci logof - login - ulaz + izlaz ili ako ne moze sa + onda (logof - login) - (ulaz - izlaz)

Ako moze neko da mi objasni kako to da uradim konkretno jer ne kapiram bas ovaj C#...
nije to za mene.
Unapred hvala.
Re: c# problem sa sabiranjem vremena 29.01.2008. u 20:01 · pre 228 meseci #20
Ako neko ume da uradi sta mi treba a nece besplatno neka mi se javi na mejl da se dogovorimo za cenu.
Odgovori
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme