C#阅读/分裂文本文件和反向句子练习

我正在尝试使用Visual Studio和Windows窗体在C#中进行这本书练习很长一段时间,但是,我在最后几步遇到了麻烦,本书没有解决方案手册,我可以寻求帮助。

这是练习说的内容:

  1. 读入文件
  2. 逐行拆分文件
  3. 将每一行推到堆栈上
  4. 将每一行弹出到结果窗口
  5. 保存反转的文件(句子应该颠倒)。

这是窗体应该是什么样子的图片:

窗体应该是什么样子

以下是名为SocialJustice-SampleText.txt的示例.txt文件:

社会正义的观念天生就是一个主观概念。 社会创造的现实对社会制度的制定至关重要,“正义”存在于所有个体的思想中,因为我们每个人对正义或不公正,公平或不公正,对或错都有不同的看法(Tyler,1997)。 反过来,从这种社会创造的现实中产生的东西被认为是社会制度制定中的“第一美德”(罗尔斯,1971),以及当政治,法律和其他管理当局受到审判时出现的第一种forms的标准(凯尔曼和汉密尔顿,1989年)。 从院士的角度来看,社会正义在道德哲学,神学,政治学,法律,社会心理学等诸多领域都有成果。 从公民的角度来看,社会正义是与财富平等分配相关的现代话语的核心(皮凯蒂,2014),健康食品的平等分配(Alkon和Agyeman,2011),以及人权的一般规则。作为能够在同等努力下取得平等成果的优点(Cergy-Pontoise,2005; Wilkinson和Pickett,2010)。 因此,社会正义本质上是一种实用主义者的工具主义者(Fraser,1998),因为社会正义的心理学是基于一种行为或事件在社会情境中的后果和意义,并且这种意义不能在此之前给出。经验(Denzin,2012)寻求解决社会正义问题的实用主义(Denzin,2012; West,1995)。 研究社会正义就是采用固有的道德目标(Denzin,2012; West,1995),其中产出本身具有政治后果。 反过来,我们的社会正义观念不是来自普遍主义的本体论,而是来自心理驱动的对行为的理解(Tyler,1997)。 然而,许多关于社会正义的研究都是基于工业革命(引用)的组织工作,而在信息时代理解社会正义方面则更少(Eubanks,2011)。 当我们将对社会正义心理学的理解转化为信息时代,并为信息系统研究提供新的前景时,我们在信息,技术,社会系统和实践的交汇处概念化研究领域,这些领域仅仅是行动和谎言组织容器(Winter et al。,2014)。 在本节中,我们借鉴了社会正义的心理学(Tyler,1997; cite; cite),它反过来源于组织正义的词源,神学和哲学根源,以阐明四个方面:相对剥夺,分配正义,程序正义和报应正义,可以作为IS中语用社会正义研究的平台。

到目前为止,我已经使用两个富文本框创建了表单,并创建了两个按钮“打开文件”和“拆分文件”。 当我点击“打开文件”按钮时,我也读过.txt文件。

根据我到目前为止所做的事情,这是我的表单的样子:

我的窗户形成了

这是我的完整代码:

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.IO; namespace FileExercise { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void OpenFileButton_Click(object sender, EventArgs e) { StreamReader objstream = new StreamReader("C:\\Users\\Omie\\Desktop\\SocialJustice-SampleText.txt"); richTextBox1.Text = objstream.ReadLine(); } private void SplitFileButton_Click(object sender, EventArgs e) { } } } 

所以我遇到了第2-5步的问题,并且想知道是否有人可以根据我已经开展的工作为我提供一个如何去做的例子。

谢谢。

编辑:更新的代码

 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.IO; using System.Text.RegularExpressions; namespace FileExercise { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void OpenFileButton_Click(object sender, EventArgs e) { string TextFile = File.ReadAllText("C:\\Users\\Omie\\Desktop\\SocialJustice-SampleText.txt", Encoding.UTF8); richTextBox1.Text = TextFile; } private void SplitFileButton_Click(object sender, EventArgs e) { string SplitFile = File.ReadAllText("C:\\Users\\Omie\\Desktop\\SocialJustice-SampleText.txt", Encoding.UTF8); string[] SplitFileBySentence = Regex.Split(SplitFile, "."); foreach (string Period in SplitFileBySentence) { richTextBox2.Text = Period; } } } } 

您可以使用

 string[] readText = File.ReadAllLines("C:\\Users\\Omie\\Desktop\\SocialJustice-SampleText.txt") 

将所有行读入字符串数组。

然后,处理循环中的每一行。 我希望你能编写代码来反转这一行。