1
我一直在研究文本分類系統,並試圖讀取文本文檔中的單詞,解析它,將其保存爲字典,然後將其保存爲XML。將字典保存到XML文件
fileNames = openFileDialog1->FileNames;
StreamReader^ objReader = gcnew StreamReader(fileNames[0]);
String^ strReader = objReader->ReadToEnd(); //read it to a string
objReader->Close();
//cut the file up
String^ delimStr = L"\r,\t,\n,' ','.',','"; //pull out the return,tabs,newline
array<Char>^ delimiter = delimStr->ToCharArray();//transform into an array
array<String^ >^strSplit = strReader->Split(delimiter);//split up the file
System::Collections::IEnumerator^ myenum = strSplit->GetEnumerator();//get enumerators
Dictionary<String^, int>^ saveWords = gcnew Dictionary<String^, int>(StringComparer::InvariantCultureIgnoreCase);
int position=-1;
//output the file
while (myenum->MoveNext())//enumerate through it
{
position++;
try{
saveWords->Add((Convert::ToString(myenum->Current)),0);
}
catch (Exception ^){
//some code
}
}
那麼,我應該怎麼做XMLSerializer?
P.S.對不起,如果代碼是一團糟和未優化。我對這一切都很陌生(文本解析,字典,XML),到目前爲止我只是想讓它工作。
這是否意味着整合一個類並從主代碼調用SerializableDictionary? – Hearty
不確定我是否認同你,但我的回答是肯定的。您必須使用新的SerializableDictionary,然後調用WriteXml來獲取XML字典的表示 –
是否存在可用於.Net 3.5之後的XMLSerializer?或者唯一的方法是使用您提供的鏈接中的那個自定義類。 我在問這個原因,我得到了錯誤。我不知道是不是因爲我的糟糕/錯誤的實現,或者它確實不被支持。 – Hearty