如何将文件解析为字符串列表,以便在c#的windows窗体应用程序中用于自动完成
本文关键字:窗体 应用程序 windows 用于 文件 列表 字符串 | 更新日期: 2023-09-27 18:16:58
我正在构建一个具有文本框字段的C#
应用程序。在此字段中,用户将写入文本,文本将从远程存储库中找到的文件自动完成。我正在使用一个名为SharpSVN的库,我试图找到一种方法,在那里我可以根据我提供的特定路径从存储库中获取该文件,然后将内容解析为字符串,这些字符串将添加到前面提到的文本框的自动完成列表中。
有两种方法:
-
使用存储库url下载文件文本。如果您希望文件处于特定版本,请尝试输入"?"R =12345",以获取文件在特定版本号处的外观:
string fileText = new WebClient().DownloadFile("https://myrepo.com/myfile.txt", localFilename);
-
或者,您也可以使用SharpSVN,如果您想要最新版本,则删除修订选项:
public string GetFileContentsAsString(long revisionNumber) { return new StreamReader(GetFileContents(revisionNumber)).ReadToEnd(); } private MemoryStream GetFileContents(long revisionNumber) { SvnRevision rev = new SvnRevision(revisionNumber); MemoryStream stream = new MemoryStream(); using (SvnClient client = GetClient()) { client.FileVersions(SvnTarget.FromUri(RemotePath), new SvnFileVersionsArgs() { Start = rev, End = rev }, (s, e) => { e.WriteTo(stream); }); } stream.Position = 0; return stream; }
当你有一个文本字符串文件时,你可以使用。net的string . split()方法将文本分割成一个行列表,使用''n'换行符作为分隔符:
string[] fileAsLines = fileText.Split(new char[] {''n'});