如何逐行读取记事本不接受#Line [英] How to Notepad read line by line not accept # Line

查看:76
本文介绍了如何逐行读取记事本不接受#Line的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述





记事本文字行:



#Please输入有效的EmailID

#Please接受(@,_,。)

#Not Allowed(特殊Cahracter)

nk @ gmail.com,nr @ gmail.com, ns @ gmail.com,sd @ gmail.com



上面的记事本文本文件所以这个记事本文本逐行读取(#)包含文本不读取该行



我在C#中的源代码

  string  Emailid =   C:\\ MyPath \\EmailId.txt; 
string TextLine = ;
System.IO.StreamReader objReader;
objReader = new System.IO.StreamReader(Emailid);
do
{
if (objReader.ReadLine()! =
{
TextLine = TextLine + objReader.ReadLine( );
}
} while (objReader.Peek()!= -1);
txtTo.Text = TextLine;
objReader.Close();





我想要最终结果(TextLine)记事本文字是

nk @ gmail.com,nr @ gmail.com,ns @ gmail.com,sd @ gmail.com

这只是

谢谢

解决方案

使用 StartsWith()和Trim():

 .. 。
if (objReader.ReadLine()。Trim()。StartsWith( )== false
...


这应该可以正常工作。将Console.WriteLine(...)替换为您想要对文本行执行的操作的相应代码。



祝你好运!



  var  filePath =   C:\\ MyPath \\EmailId.txt; 
var fileText = System.IO.File.ReadAllText(filePath);
var lines = fileText.Split( new string [] {Environment.NewLine},StringSplitOptions.RemoveEmptyEntries);

lines = lines.Select(p = > p.Trim())
.Where(p = > !string.IsNullOrWhiteSpace(p)&&
!p.StartsWith( ,StringComparison.OrdinalIgnoreCase))
.ToArray();

foreach var line 行)
Console.WriteLine(line);


Hi,

Notepad Text Line:

#Please Enter The Valid EmailID
#Please Accept(@,_,.)
#Not Allowed(special Cahracter)
nk@gmail.com,nr@gmail.com,ns@gmail.com,sd@gmail.com

The above in Notepad Text file so this notepad text line by line Read (#)Include Text Not Read That line

My Source code in C#

string Emailid = "C:\\MyPath\\EmailId.txt";
       string TextLine = "";
       System.IO.StreamReader objReader;
       objReader = new System.IO.StreamReader(Emailid);
       do
       {
           if (objReader.ReadLine() != "#")
           {
               TextLine = TextLine + objReader.ReadLine();
           }
       } while (objReader.Peek() != -1);
       txtTo.Text = TextLine;
       objReader.Close();



I Want Final Result(TextLine) Notepad Text is
nk@gmail.com,nr@gmail.com,ns@gmail.com,sd@gmail.com
This only
Thanks

解决方案

Use StartsWith() and Trim():

...
 if (objReader.ReadLine().Trim().StartsWith("#") == false)
...


This should work just fine. Replace the Console.WriteLine(...) with the appropriate code for what you want to do with the lines of text.

Good luck!

var filePath = "C:\\MyPath\\EmailId.txt";
var fileText = System.IO.File.ReadAllText(filePath);
var lines = fileText.Split(new string[] {Environment.NewLine}, StringSplitOptions.RemoveEmptyEntries);

lines = lines.Select(p => p.Trim())
				.Where(p => !string.IsNullOrWhiteSpace(p) &&
				!p.StartsWith("#", StringComparison.OrdinalIgnoreCase))
				.ToArray();

foreach (var line in lines)
	Console.WriteLine(line);


这篇关于如何逐行读取记事本不接受#Line的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆