praegune kellaaeg 17.06.2025 21:17:22
|
Hinnavaatlus
:: Foorum
:: Uudised
:: Ärifoorumid
:: HV F1 ennustusvõistlus
:: Pangalink
:: Telekavad
:: HV toote otsing
|
|
autor |
|
RudiTurbo
HV kasutaja
liitunud: 11.10.2003
|
13.05.2009 13:26:25
C# Kaks RTF'i stringi vaja kolmandaks ühiseks RTF'iks kokku mixida |
|
|
Tere
Koolis projekt siis just lõppemas ja üks jama veel vaja ära lahendada. Application settingsites on siis kaks või isegi kolm stringi salvestatud richtextbox.rtf moel.
Ning nüüd oleks vaja need kolmandasse Richtextboxi sättida nii, et nad on nüüd kõik üheks stringiks kokku keevitatud ja, et kõik fondid ja asjad oleksid alles.
Lisaks veel üks probleem, meil on ka variant, kus anname kogu jama HTML'i kujul Outlookile e-maili saatmiseks ning sinna on vaja banner panna, proovisime mingitmoodi, kuid Outlooki ei ilmunud pilt, vaid see X'i märk, nagu kui pilti ei leita.Mis kujul see HTML'i kood peaks olema, et see image sinna e-maili lisatud saaks kui source on aadress kõvakettalt?
Ma loodan, et mu selgitused pole väga raskesti mõistetavad, sest õppetöö käib Taanis ning Inglise keeles, seega pole harjunud koodijuttu Eesti keeles rääkima
|
|
Kommentaarid: 14 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
13 |
|
tagasi üles |
|
 |
Ho Ho
HV Guru

liitunud: 16.02.2002
|
13.05.2009 13:40:41
|
|
|
RudiTurbo kirjutas: |
Mis kujul see HTML'i kood peaks olema, et see image sinna e-maili lisatud saaks kui source on aadress kõvakettalt? |
Ma pole küll sellega tegelenud kuid kas oled ikka kindel, et tahad source'ks määrata pilti kõvakettalt mitte maili attatchmendist?
_________________ Teach a man to reason and he'll think for a lifetime
Common sense - so rare that it's a damn superpower
Vaadates paljude inimeste sõnavõtte siin ja mujal jääb üle ainult klassikuid tsiteerida - "I weep for humanity" |
|
Kommentaarid: 106 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
1 :: |
86 |
|
tagasi üles |
|
 |
Absona
Lõuapoolik

liitunud: 17.09.2008
|
13.05.2009 15:03:50
Re: C# Kaks RTF'i stringi vaja kolmandaks ühiseks RTF'iks kokku mixida |
|
|
RudiTurbo kirjutas: |
Tere
Koolis projekt siis just lõppemas ja üks jama veel vaja ära lahendada. Application settingsites on siis kaks või isegi kolm stringi salvestatud richtextbox.rtf moel.
Ning nüüd oleks vaja need kolmandasse Richtextboxi sättida nii, et nad on nüüd kõik üheks stringiks kokku keevitatud ja, et kõik fondid ja asjad oleksid alles.
|
private void Tosta_Stringe_Ymber()
{
string RTF1 = Ava("RTF aadres 1");
string RTF2 = Ava("RTF aadres 2");
Kirjuta("RTF aadress", RTF1 + "\n" + RTF2);
}
private string Ava(string aadress)
{
FileStream fs = new FileStream(aadress, FileMode.Open, FileAccess.Read);
StreamReader sisse = new StreamReader(fs);
string rida = sisse.ReadToEnd();
sisse.Close();
fs.Close();
return rida;
}
private void Kirjuta(string kuhu, string mida)
{
FileStream f = new FileStream(kuhu, FileMode.Truncate, FileAccess.Write);
StreamWriter valja = new StreamWriter(f);
valja.Write(mida);
valja.Close();
f.Close();
}
|
RudiTurbo kirjutas: |
Lisaks veel üks probleem, meil on ka variant, kus anname kogu jama HTML'i kujul Outlookile e-maili saatmiseks ning sinna on vaja banner panna, proovisime mingitmoodi, kuid Outlooki ei ilmunud pilt, vaid see X'i märk, nagu kui pilti ei leita.Mis kujul see HTML'i kood peaks olema, et see image sinna e-maili lisatud saaks kui source on aadress kõvakettalt?
|
Kui pilt asub projektiga samas kasutas (debug), siis aitab selline asi
string aadress = Application.StartupPath + "faili nimi või kaust edasi kus fail asub"; |
Kui asub kusagil arvutis suvaliselt, siis nii:
string aadress = @"faili aadress"; |
Muidu HTML'is kuvatakse arvutis asuvaid faile sellise aadressiga: file:///C:/Documents%20and%20Settings/Kasutaja/jne
Näiteks:
string failiAadress =System.IO.Path.GetDirectoryName(openFileDialog.FileName);
string lisaHTMLiPildiAadress = "file:///" + failiAadress;
|
_________________ Veebilehed, veebiprogrammeerimine, veebilahendused
Erinevad rakendused ja skriptid.
viimati muutis Absona 13.05.2009 15:15:32, muudetud 2 korda |
|
Kommentaarid: 11 loe/lisa |
Kasutajad arvavad: |
   |
:: |
2 :: |
0 :: |
8 |
|
tagasi üles |
|
 |
RudiTurbo
HV kasutaja
liitunud: 11.10.2003
|
13.05.2009 16:07:41
|
|
|
Ho Ho kirjutas: |
RudiTurbo kirjutas: |
Mis kujul see HTML'i kood peaks olema, et see image sinna e-maili lisatud saaks kui source on aadress kõvakettalt? |
Ma pole küll sellega tegelenud kuid kas oled ikka kindel, et tahad source'ks määrata pilti kõvakettalt mitte maili attatchmendist? |
Praegu hakkasin mõtlema, et päris sedasi ei saa panna vist jah, kui just Outlook seda pilti kuidagi ära ei omista saates. Kuid see on väixem mure nagunii, peamine mure on see RTF'i purakas
Absona kirjutas: |
RudiTurbo kirjutas: |
Tere
Koolis projekt siis just lõppemas ja üks jama veel vaja ära lahendada. Application settingsites on siis kaks või isegi kolm stringi salvestatud richtextbox.rtf moel.
Ning nüüd oleks vaja need kolmandasse Richtextboxi sättida nii, et nad on nüüd kõik üheks stringiks kokku keevitatud ja, et kõik fondid ja asjad oleksid alles.
|
private string Ava(string aadress)
{
FileStream fs = new FileStream(aadress, FileMode.Open, FileAccess.Read);
|
|
Kui jõuab selle reani, siis viskab errori : invalid characters in path.
Sinna söötsin siis pmst richtextbox1.Rtf'ist tuleva value või tuleb sinna midagi muud sööta?
EDIT: Tegelt kui nüüd õieti aru saan, siis Su lahendus on vist juhul, kui mul olexid kaks dokumenti salvestatud kusagil ning sooviksin kaks rtf faili ühendada üheks ühtseks failiks?
Aga minul on kahest richtextboxist võetud see value, mis Ta annab richTextBox1.Rtf käsklusega, mitte richTextBox1.Text käsklusega ja siis on seal huinjaa value, mida ei anna lihtsalt kahe erineva puhul ühex liita nagu seda saaks teha tavalise stringi puhul richTextBox3.Text = richTextBox2.Text + "\n" + richTextBox1;
Ehk siis mul oleks vaja richTextBox3.Rtf = richTextBox2.Rtf + richTextBox1.Rtf; Kuid sedasi ei saa, sest siis ta kirjutab midagi üle ja jääb vist ainult viimane antud value vms
|
|
Kommentaarid: 14 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
13 |
|
tagasi üles |
|
 |
Absona
Lõuapoolik

liitunud: 17.09.2008
|
14.05.2009 00:41:06
|
|
|
RudiTurbo kirjutas: |
...
Kui jõuab selle reani, siis viskab errori : invalid characters in path.
Sinna söötsin siis pmst richtextbox1.Rtf'ist tuleva value või tuleb sinna midagi muud sööta?
EDIT: Tegelt kui nüüd õieti aru saan, siis Su lahendus on vist juhul, kui mul olexid kaks dokumenti salvestatud kusagil ning sooviksin kaks rtf faili ühendada üheks ühtseks failiks?
Aga minul on kahest richtextboxist võetud see value, mis Ta annab richTextBox1.Rtf käsklusega, mitte richTextBox1.Text käsklusega ja siis on seal huinjaa value, mida ei anna lihtsalt kahe erineva puhul ühex liita nagu seda saaks teha tavalise stringi puhul richTextBox3.Text = richTextBox2.Text + "\n" + richTextBox1;
Ehk siis mul oleks vaja richTextBox3.Rtf = richTextBox2.Rtf + richTextBox1.Rtf; Kuid sedasi ei saa, sest siis ta kirjutab midagi üle ja jääb vist ainult viimane antud value vms  |
Jap, õigesti said aru. Ma sain niimoodi aru, et tekst võetakse failist mitte richTextBox'ist. Aga järgnev kood peaks selle probleemi lahendama lihtsalt :
public void Tosta_Stringe_Ymber()
{
asetatakseRichTextBox.Clear();
Kopeeri_Ja_Aseta_Stringe(richTextBox1);
Kopeeri_Ja_Aseta_Stringe(richTextBox2);
}
private void Kopeeri_Ja_Aseta_Stringe(RichTextBox kopeeritavRichTextBox)
{
kopeeritavRichTextBox.SelectAll();
kopeeritavRichTextBox.Copy();
asetatakseRichTextBox.Paste();
asetatakseRichTextBox.AppendText("\n");
}
|
_________________ Veebilehed, veebiprogrammeerimine, veebilahendused
Erinevad rakendused ja skriptid. |
|
Kommentaarid: 11 loe/lisa |
Kasutajad arvavad: |
   |
:: |
2 :: |
0 :: |
8 |
|
tagasi üles |
|
 |
RudiTurbo
HV kasutaja
liitunud: 11.10.2003
|
14.05.2009 11:28:36
|
|
|
Absona kirjutas: |
RudiTurbo kirjutas: |
...
Kui jõuab selle reani, siis viskab errori : invalid characters in path.
Sinna söötsin siis pmst richtextbox1.Rtf'ist tuleva value või tuleb sinna midagi muud sööta?
EDIT: Tegelt kui nüüd õieti aru saan, siis Su lahendus on vist juhul, kui mul olexid kaks dokumenti salvestatud kusagil ning sooviksin kaks rtf faili ühendada üheks ühtseks failiks?
Aga minul on kahest richtextboxist võetud see value, mis Ta annab richTextBox1.Rtf käsklusega, mitte richTextBox1.Text käsklusega ja siis on seal huinjaa value, mida ei anna lihtsalt kahe erineva puhul ühex liita nagu seda saaks teha tavalise stringi puhul richTextBox3.Text = richTextBox2.Text + "\n" + richTextBox1;
Ehk siis mul oleks vaja richTextBox3.Rtf = richTextBox2.Rtf + richTextBox1.Rtf; Kuid sedasi ei saa, sest siis ta kirjutab midagi üle ja jääb vist ainult viimane antud value vms  |
Jap, õigesti said aru. Ma sain niimoodi aru, et tekst võetakse failist mitte richTextBox'ist. Aga järgnev kood peaks selle probleemi lahendama lihtsalt :
public void Tosta_Stringe_Ymber()
{
asetatakseRichTextBox.Clear();
Kopeeri_Ja_Aseta_Stringe(richTextBox1);
Kopeeri_Ja_Aseta_Stringe(richTextBox2);
}
private void Kopeeri_Ja_Aseta_Stringe(RichTextBox kopeeritavRichTextBox)
{
kopeeritavRichTextBox.SelectAll();
kopeeritavRichTextBox.Copy();
asetatakseRichTextBox.Paste();
asetatakseRichTextBox.AppendText("\n");
}
|
|
Sellega on see probleem, et sel hetkel, kui ma neid juba ühendama pean, pole nad enam richtextboxides, vaid see rtf value on stringidesse salvestatud
Praegu töötame neljakesi selle kallal, ehk leiame lahenduse. Quadruple programming!
|
|
Kommentaarid: 14 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
13 |
|
tagasi üles |
|
 |
inzinz
HV kasutaja
liitunud: 26.01.2005
|
16.05.2009 16:42:46
|
|
|
Aga siis, tekitad jooksu pealt kaks uut rtf textboxi mällu (new RichTextBox()), ühte laete selle rtf stringi sisse, ja siis teed seda selectall, copy, paste, loogikat, seejärel laete esimese textboxi sisse teise rtf stringi ja teed sama selectall, copy, paste loogikat.
Seejärel on teises richtextboxis korrektne väärtus, selle võtad sealt nüüd välja, ja teed ennem tekitatud richtextboxidele dispose.
Ainus teine variant ilma richtextboxita seda asja teha oleks ise rtf parser ja writer teha vist
_________________ Upload.ee - eestimaine failiupload |
|
Kommentaarid: 4 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
4 |
|
tagasi üles |
|
 |
phpzone
HV kasutaja
liitunud: 02.04.2002
|
19.05.2009 11:53:33
|
|
|
Mina teeksin selle asja nii:
RichTextBox1.SelectAll()
RichTextBox2.SelectAll()
RichTextBox3.SelectedRtf = RichTextBox1.SelectedRtf
RichTextBox3.SelectedRtf = RichTextBox2.SelectedRtf
Üldiselt on väga halb praktika asju läbi clipboardi kopeerida. kasutaja võib väga kurjaks saada, kui sa ta clipoardis oleva info hävitad...
_________________ One man's constant is another man's variable |
|
Kommentaarid: 13 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
13 |
|
tagasi üles |
|
 |
|
lisa lemmikuks |
|
|
sa ei või postitada uusi teemasid siia foorumisse sa ei või vastata selle foorumi teemadele sa ei või muuta oma postitusi selles foorumis sa ei või kustutada oma postitusi selles foorumis sa ei või vastata küsitlustele selles foorumis sa ei saa lisada manuseid selles foorumis sa võid manuseid alla laadida selles foorumis
|
|
Hinnavaatlus ei vastuta foorumis tehtud postituste eest.
|