Je voudrais savoir la meilleure façon de créer un fichier HTML simple en utilisant c #.
Est-ce qu'il utilise quelque chose comme System.IO.File.Create
?
Quelque chose comme -
using (FileStream fs = new FileStream("test.htm", FileMode.Create))
{
using (StreamWriter w = new StreamWriter(fs, Encoding.UTF8))
{
w.WriteLine("<H1>Hello</H1>");
}
}
Je dirai que File.WriteAllText est une manière stupide de rédiger un fichier texte pour C #> = 3.5.
File.WriteAllText("myfile.htm", @"<html><body>Hello World</body></html>");
Je dirai même que File.WriteAllLines est suffisamment stupide pour écrire du HTML plus gros sans trop se battre avec la composition de chaînes. Mais la "bonne" version est uniquement pour C # 4.0 (une version un peu moins bonne est 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());
Je voudrais aller avec File.Create et ensuite ouvrir un StreamWriter à ce fichier si vous n'avez pas toutes les données lorsque vous créez le fichier . Ceci est un exemple de MS qui peut vous aider
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);
}
}
}
}
Jetez un coup d'œil au HtmlTextWriter class. Pour un exemple d'utilisation de cette classe, consultez par exemple http://www.dotnetperls.com/htmltextwriter .
Lecture et écriture de fichiers texte et MSDN info . HTML est juste un simple fichier texte avec l'extension * .HTML;)
Ouvrir simplement un fichier en écriture (à l’aide de File.OpenWrite () par exemple) créera le fichier s’il n’existe pas encore.
Si vous consultez http://msdn.Microsoft.com/en-us/library/d62kzs03.aspx vous pouvez trouver un exemple de création de fichier.
Mais comment voulez-vous créer le contenu du fichier html? Si c'est juste statique, vous pouvez simplement l'écrire dans un fichier. Si vous devez créer le code HTML à la volée, vous pouvez utiliser un fichier ASPX avec le balisage approprié et utiliser Server.Execute pour obtenir le code HTML sous forme de chaîne.
Oui, System.IO.File.Create(Path)
va créer votre fichier très bien . Vous pouvez aussi utiliser un filestream
et y écrire. Semble plus pratique d’écrire un fichier htm