Hei,
en ole ohjelmoinut pitkään aikaan ja nyt tuli jälleen tarve. Osaisiko joku antaa neuvoja miten lähteä suunnittelemaan merkkijonoja vertailevaa ohjelmaa.
Esimerkiksi ohjelma, joka tutkii ensin solun A sisältöä ja vertaa solun B sisältöä.
Jos solussa A on koodi A183736 E84837 ja solussa b on eriävä arvo. Ohjelma kertoisi soluun C, että A ja B eivät täsmää. Kun taas täsmätessään kertoisi sen. Ensinmäiseksi kiinnostaa tietää onnistuuko tämä C# kielellä.
Eiköhän se onnistu ihan näin:
if((string)A == (string)B){ C = true; } else { C = false } //Tai: if(A.Equals(B)){ C = true; } else { C = false }
Tai vain:
C = A.Equals(B);
Olettaen, että tarkoitat "soluilla" muuttujia.
//Erillistä metodia kutsumalla: private bool CompareStrings(string a, string b) { return (a == b) ? true : false; } //tai tarkistamalla suoraan joko if lausekkeella: if(a == b) c = true; else c = false; //tai käyttämällä String luokan metodia: c = a.Equals(b);
En ihan ymmärrä ternary operaattorin tai if-lauseen käyttöä niin, että kun sisään tulee true niin palautetaan true ja kun sisään tulee false niin palautetaan false. Eikö se ole aika turhaa?
groovyb kirjoitti:
return (a == b) ? true : false;
Miksei
return (a == b);
groovyb kirjoitti:
if(a == b) c = true; else c = false;
Miksei
c = (a == b);
Kuitenkaan tuota viimeistä et ollut tehnyt samalla logiikalla
c = a.Equals(b) ? true : false;
annoin vain erilaisia vaihtoehtoja, osa oli jo yllä lueteltuna hieman erilaisella syntaksilla. Mikäli kyseessä on aloittelija, hän ei välttämättä tiedä että vertailun tuloksen voi palauttaa suoraan (as in return (a==b);), siksi lisäsin ternaryyn true : false:n. Mutta annoit OP:lle lisää esimerkkejä, hyvähän se vaan on.
Jos kysyjä tarkoittaa soluilla excelin soluja, niin excelin lukeminen ja kirjoittaminen on suht helppoa c#:lla. Tuolta löytyy ainakin infoa: http://csharp.net-informations.com/excel/csharp-create-excel.htm
Kiitoksia kaikille paljon vastauksistanne. Vaikkakin ilmaisin itseäni hieman surkeasti, tästä huolimatta sain paljon vastauksia ja suuntaa mitä lähteä kehittämään. Koska en ollut vielä varma itsekkään, haluanko lähteä vertailemaan Excelissä olevia soluja keskenään vai kahden muuttujan välistä tietoa. Sain vastauksia molempiin tapoihin ja siitä kiitos teille. :)
Aihe on jo aika vanha, joten et voi enää vastata siihen.