通过标签编辑将文本从一个地方带到另一个地方

时间:2014-09-07 08:08:01

标签: c# asp.net text webforms

所以,我知道我的头衔令人困惑,但我可以解释我的自我,我希望有人能知道我能在这做什么。

我有一个网站(网络表单,asp.net 4.5),我已经建立了我的朋友,我不知道我该怎么做,

我需要当有人点击按钮然后网站读取文本文件,让我们这样说:

var xml = XDocument.Load(xmlplace + "\\AppSettings.xml");
            string place = xml.Element("Settings").Element("App").Attribute("Dir").Value.ToString();
            string temname = Template1.Text;
           HTMLTEXT.Text = File.ReadAllText(place + "/" + temname + ".html");

HTMLTEXT =网站中的文本框,其中包含所有文本文件信息。

现在,此功能可100%运行。这是完美的。但后来我的朋友请我做点别的事。

他给了我这个文字:

Lorem Ipsum is simply dummy text of the printing and typesetting industry. 
Lorem Ipsum is simply dummy text of the printing and typesetting industry. 

//this arena
Show only this
Show only this
//end Arena

Lorem Ipsum is simply dummy text of the printing and typesetting industry. 
Lorem Ipsum is simply dummy text of the printing and typesetting industry. 

并且他希望我从文件中获取所有文本,但只显示//这个竞技场文本,其中//这个竞技场是开始,//结束竞技场是它的结束。

我真的不知道如何使用IO或其他任何方式。有人有任何想法吗?

顺便说一句,如果我没有表达自己的意思,请告诉我,我可以改变并尝试更好地解释。

编辑:

如果您还可以告诉我如何通过更改保存文件,那将非常棒,谢谢。

TY非常,任何一个帮助的人。

1 个答案:

答案 0 :(得分:1)

string text = Encoding.UTF8.GetString(File.ReadAllBytes(place + "/" + temname + ".html"));
HTMLTEXT.Text = text.Split(new string[] { "//this arena" }, StringSplitOptions.None)[1].Split(new string[] { "//end Arena" }, StringSplitOptions.None)[0];
//after your edit you have to read the text again if you use asp.net web forms or keep the text in view state


string editedText = text.Split(new string[] { "//this arena" }, StringSplitOptions.None)[0] + "//this arena" + HTMLTEXT.Text + "//end Arena" +  text.Split(new string[] { "//this arena" }, StringSplitOptions.None)[1].Split(new string[] { "//end Arena" }, StringSplitOptions.None)[1];

File.WriteAllText("Path", editedText, Encoding.UTF8);

我建议你更好地使用xml和LINQ