it-swarm-id.com

Membuat file (.htm) di C #

Saya ingin tahu cara terbaik untuk membuat file html sederhana menggunakan c #.

Apakah menggunakan sesuatu seperti System.IO.File.Create?

17
Johan

Sesuatu seperti -

using (FileStream fs = new FileStream("test.htm", FileMode.Create)) 
{ 
    using (StreamWriter w = new StreamWriter(fs, Encoding.UTF8)) 
    { 
        w.WriteLine("<H1>Hello</H1>"); 
    } 
} 
25
ipr101

Saya akan mengatakan bahwa File.WriteAllText adalah cara yang bodoh untuk menulis file teks untuk C #> = 3.5.

File.WriteAllText("myfile.htm", @"<html><body>Hello World</body></html>");

Saya bahkan akan mengatakan bahwa File.WriteAllLines cukup bodoh untuk menulis html yang lebih besar tanpa bertarung terlalu banyak dengan komposisi string. Tetapi versi "baik" hanya untuk C # 4.0 (versi yang sedikit lebih buruk adalah C #> = 2.0)

List<string> lines = new List<string>();
lines.Add("<html>");
lines.Add("<body>");
lines.Add("Hello World");
lines.Add("</body>");
lines.Add("</html>");

File.WriteAllLines("myfile.htm", lines);
// With C# 3.5
File.WriteAllLines("myfile.htm", lines.ToArray());
8
xanatos

Saya akan pergi dengan File.Create dan kemudian buka StreamWriter untuk file itu jika Anda tidak memiliki semua data saat Anda membuat file . Ini adalah contoh dari MS yang dapat membantu Anda

class Test 
{
    public static void Main() 
    {
        string path = @"c:\temp\MyTest.txt";

        // Create the file.
        using (FileStream fs = File.Create(path, 1024)) 
        {
            Byte[] info = new UTF8Encoding(true).GetBytes("This is some text in the file.");
            // Add some information to the file.
            fs.Write(info, 0, info.Length);
        }

        // Open the stream and read it back.
        using (StreamReader sr = File.OpenText(path)) 
        {
            string s = "";
            while ((s = sr.ReadLine()) != null) 
            {
                Console.WriteLine(s);
            }
        }
    }
}
3
Marthin

Lihatlah kelas HtmlTextWriter . Untuk contoh cara menggunakan kelas ini, misalnya lihat http://www.dotnetperls.com/htmltextwriter .

2
Nubok

Membaca dan menulis file teks dan Info MSDN . HTML hanyalah file teks sederhana dengan ekstensi * .HTML;)

1
neurotix

Cukup dengan membuka file untuk ditulis (menggunakan File.OpenWrite () misalnya) akan membuat file jika belum ada.

0
Sjoerd

Jika Anda melihat http://msdn.Microsoft.com/en-us/library/d62kzs03.aspx Anda dapat menemukan contoh membuat file.

Tetapi bagaimana Anda ingin membuat konten file html? Jika itu hanya statis maka Anda bisa menulisnya ke file .. jika Anda harus membuat html dengan cepat, Anda bisa menggunakan file ASPX dengan markup yang benar dan menggunakan Server. Jalankan untuk mendapatkan HTML sebagai string. 

0
Wouter de Kort

Yap, System.IO.File.Create(Path) akan membuat file Anda baik-baik saja . Anda juga dapat menggunakan filestream dan menulisnya. Tampaknya lebih mudah untuk menulis file htm

0
Frederiek