Ich habe den folgenden Code:Serialisierung und Deserialisierung in eine XML-Datei, C#
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
namespace ConsoleApplication28
{
class Program
{
static void Main()
{
List<string> dirs = FileHelper.GetFilesRecursive(@"c:\Documents and Settings\bob.smith\Desktop\Test");
foreach (string p in dirs)
{
Console.WriteLine(p);
}
//Write Count
Console.WriteLine("Count: {0}", dirs.Count);
Console.Read();
}
static class FileHelper
{
public static List<string> GetFilesRecursive(string b)
{
// 1.
// Store results in the file results list.
List<string> result = new List<string>();
// 2.
// Store a stack of our directories.
Stack<string> stack = new Stack<string>();
// 3.
// Add initial directory.
stack.Push(b);
// 4.
// Continue while there are directories to process
while (stack.Count > 0)
{
// A.
// Get top directory
string dir = stack.Pop();
try
{
// B
// Add all files at this directory to the result List.
result.AddRange(Directory.GetFiles(dir, "*.*"));
// C
// Add all directories at this directory.
foreach (string dn in Directory.GetDirectories(dir))
{
stack.Push(dn);
}
}
catch
{
// D
// Could not open the directory
}
}
return result;
}
}
}
}
Der obige Code funktioniert gut für rekursiv zu finden, welche Dateien/Verzeichnisse in einem Ordner auf meinem c liegen :.
Ich versuche, die Ergebnisse dessen, was dieser Code mit einer XML-Datei macht, zu serialisieren, aber ich bin nicht sicher, wie dies zu tun ist.
Mein Projekt ist das: Finden Sie alle Dateien/Verzeichnisse w/in einem Laufwerk, Serialisierung in eine XML-Datei. Dann, beim zweiten Mal, wenn ich diese App starte, habe ich zwei XML-Dateien zum Vergleich. Ich möchte dann die XML-Datei vom ersten Mal, wenn ich diese App ausführte, deserialisieren und Unterschiede mit der aktuellen XML-Datei vergleichen und einen Bericht über Änderungen erstellen (d. H. Dateien, die hinzugefügt, gelöscht, aktualisiert wurden).
Ich hatte gehofft, etwas Hilfe zu bekommen, da ich ein Anfänger in C# bin, und ich bin sehr sehr wackelig auf Serialisierung und Deserialisierung. Ich habe viel Mühe beim Programmieren. Kann mir jemand helfen?
Danke
Nun, die Sache ist, ich bin nicht klar, wie die XMLSerializer-Klasse genau zu implementieren. Ich mache jetzt C# seit 3 Monaten ... und ich habe große Lücken in meinem Wissen. Ich habe Beispiele verfolgt, die ich im Internet gefunden habe, aber ich habe keine Ahnung, wie ich das Beispiel verwenden würde, um mir hier zu helfen ... und wo ich den Code selbst einfügen könnte. – yeahumok
@yeahumok: Vielleicht möchten Sie überlegen, ob "das Finden von Beispielen" der richtige Weg für Sie ist, zu lernen. Manche Menschen lernen auf diese unstrukturierte Art gut. Andere verlangen jemanden, der die Struktur des Wissens bereits kennt, um es in einer vernünftigen Ordnung darzustellen. Vielleicht brauchen Sie das. Vielleicht würde etwas wie http://msdn.microsoft.com/en-us/library/90c86ass(VS.85).aspx Ihnen helfen, und nicht zufällige Beispiele, die Sie zufällig finden. –