Avatar billede scarface335 Nybegynder
04. september 2007 - 09:25 Der er 18 kommentarer og
1 løsning

Skriv Tekst til en fil

Jeg har lavet en tekst fil med følgende kode:

using (StreamWriter sw = File.CreateText(fileName))
{
    sw.WriteLine(text);
}

Problemet er at File.CreateText laver en UTF-8 encode fil, Jeg skal lave en Ascii eller Ansi, Hvordan Gøres dette ?

På forhånd Tak :-)
Avatar billede sgaardbo Nybegynder
04. september 2007 - 09:52 #1
Du kan specificere encoding, når du opretter din StreamWriter.

F.eks.:
System.IO.StreamWriter sw =
  new System.IO.StreamWriter(
    "minfil.txt",
    true,  // append
    new System.Text.ASCIIEncoding()
);

Søren.
Avatar billede scarface335 Nybegynder
06. september 2007 - 14:48 #2
Det virker fint borset fra en ting, den bruger Ascii en-us, det skal være dansk Ascii tegnsæt da jeg skal bruge ÆØÅ
Avatar billede nielle Nybegynder
06. september 2007 - 14:51 #3
Der er ikke noget som hedder dansk ASCII - ASCII stopper længe før de danske tegn kommer til.

Men prøv at ændre:

new System.Text.ASCIIEncoding()

til

new System.Text.Default()
Avatar billede nielle Nybegynder
06. september 2007 - 14:52 #4
Eller skriv "Encoding.Default" i stedet.
Avatar billede sgaardbo Nybegynder
06. september 2007 - 18:52 #5
Jeg ville skyde på, at 'Default' er den encoding man får, hvis man ikke specificerer noget. -Så nettoeffekten af, eksplicit at sætte encoding til Default, burde være ingenting. -Men jeg kan tage fejl.

Det lyder som om du vil have fat i den gode gamle codepage 865. -Så skriver du blot

new System.Text.Encoding.GetEncoding("CP865");

  Søren.
Avatar billede arne_v Ekspert
06. september 2007 - 19:40 #6
Encoding.Default er ISO-8859-1 alias CP-1252 alias ANSI.

Ingen ting er ASCII.
Avatar billede scarface335 Nybegynder
07. september 2007 - 11:51 #7
Encoding.Default virker, smid et svar så der kan udeles point.

Takker og bukker
Avatar billede nielle Nybegynder
08. september 2007 - 07:16 #8
Svar :^)
Avatar billede nielle Nybegynder
08. september 2007 - 07:17 #9
Mon ikke også sgaardbo skal smide et svar? :^)
Avatar billede sgaardbo Nybegynder
08. september 2007 - 10:06 #10
Gerne :-)

Jeg finder det rimeligt besynderligt, at det faktisk giver en forskel, at specificere 'default'-encoding, når man laver sin stream. Burde det ikke netop være 'default'?? -Er der nogen der har en forklaring på det?
Avatar billede arne_v Ekspert
08. september 2007 - 15:46 #11
Default er en instans af Encoding klassen ovre i System.Text. Og det indikerer at den
encoding er defualt i Windows.

StreamWriter klassen i System.IO bruger Encoding.ASCII hvis det ikke angives
eksplicit.

Det er to forskellige steder. Men man kan godt kalde det lidt inkonsistent. Men det
er jo udne tvivl to forskellige teams der har designet System.Text og System.IO.
Avatar billede nielle Nybegynder
17. september 2007 - 12:41 #12
Lukketid?
Avatar billede sgaardbo Nybegynder
17. september 2007 - 13:14 #13
Jeps.

Tak for info arne_v
Avatar billede nielle Nybegynder
22. september 2007 - 22:06 #14
arne_v?
Avatar billede arne_v Ekspert
22. september 2007 - 22:09 #15
mig og sgaardbo havde lige en tråd i tråden om "default"
Avatar billede nielle Nybegynder
22. september 2007 - 22:40 #16
sgaardbo beder dig vist om at lægge et svar :^)
Avatar billede arne_v Ekspert
23. september 2007 - 00:26 #17
Det er ikke hans spørgsmål, så det tror jeg ikke.
Avatar billede nielle Nybegynder
23. september 2007 - 08:02 #18
Ahhh ... jeg sover vist godt og grundigt :^|
Avatar billede nielle Nybegynder
20. november 2007 - 17:43 #19
Takker for point :^)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester