您的位置:首页 > 编程语言

XML读写部分代码,仅供参考!

2007-09-18 09:28 281 查看
XmlDocument doc = new XmlDocument();
                doc.Load(GetXmlPath(FilePath));
                XmlNodeReader nodereader = new XmlNodeReader(doc);
               // XmlNodeList emelis = doc.SelectNodes("../w:p[text()!='']");
                XmlNodeList emelis = doc.GetElementsByTagName("w:p");
                XmlTextWriter xtw = new XmlTextWriter(XliffPath,System.Text.Encoding.Unicode);
                xtw.WriteStartDocument();

                xtw.WriteStartElement("TRANSLATEFILE");
                xtw.WriteStartElement("INSRUCTION");
                xtw.WriteAttributeString("Path", XliffPath);
                xtw.WriteAttributeString("Creator", "chenjie");   //获取创建人还需要完善
                xtw.WriteAttributeString("Date", System.DateTime.Now.ToShortDateString());
                xtw.WriteEndElement();
                xtw.WriteStartElement("ARTICLE");
              
                for (int i = 0; i < emelis.Count; i++)
                {
                    xtw.WriteStartElement("Para");
                    sentence = emelis[i].InnerText.ToString();
                    int StartPos = 0;
                    while (StartPos < sentence.Length)
                    {
                        if (IsElement == 1)
                        {
                            xtw.WriteStartElement("Tu");
                            xtw.WriteStartElement("Tuv");
                            xtw.WriteAttributeString("Language", "SourceLanguage");
                            IsElement = 0;
                        }
                        xtw.WriteString(sentence.Substring(StartPos, 1));
                        if (sentence[StartPos].ToString() == "." || sentence[StartPos].ToString() == ":" || sentence[StartPos].ToString() == "?" || sentence[StartPos].ToString() == "!" || sentence[StartPos].ToString() == "。" || sentence[StartPos].ToString() == ":" || sentence[StartPos].ToString() == "?" || sentence[StartPos].ToString() == "!")
                        {
                            IsDivideText idt = new IsDivideText();
                            if (IsElement == 0 && idt.IsDivideTag(sentence, StartPos))
                            {
                                xtw.WriteEndElement();
                                xtw.WriteStartElement("Tuv");
                                xtw.WriteAttributeString("Language", "TargetLanguage");
                                xtw.WriteEndElement();
                                xtw.WriteEndElement();
                                IsElement = 1;

                            }
                        }
                        StartPos++;
                    }
                    if (IsElement == 0)
                    {
                        xtw.WriteEndElement();
                        xtw.WriteStartElement("Tuv");
                        xtw.WriteAttributeString("Language", "TargetLanguage");
                        xtw.WriteEndElement();
                        xtw.WriteEndElement();
                        IsElement = 1;

                    }

                    xtw.WriteEndElement();

                }
                xtw.WriteEndElement();
                xtw.WriteEndElement();
                xtw.WriteEndDocument();
                xtw.Flush();
                xtw.Close();
                doc.Save(GetXmlPath(FilePath));
                File.Delete(GetXmlPath(FilePath));
            }
            catch { }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  xml date path