C# 文件中查找字符串 15
比如a.txt中内容为:......user=abcdpassword=123456......怎么在C#中查找user是什么?password是什么?求代码...
比如a.txt中内容为:
......
user=abcd
password=123456
......
怎么在C#中查找user是什么?password是什么?
求代码 展开
......
user=abcd
password=123456
......
怎么在C#中查找user是什么?password是什么?
求代码 展开
4个回答
展开全部
我可以帮你写一个,稍等。
——————————————————————————————————
写好了,谢谢等待。以下是截图和核心代码,完整的源码在附件中,欢迎追问。
核心代码:
/// <summary>
/// Get all text from txt file
/// </summary>
/// <param name="path">file path</param>
/// <returns></returns>
private static string GetText(string path)
{
using (var stream = new FileStream(path, FileMode.Open))
{
using (var reader = new StreamReader(stream))
{
return reader.ReadToEnd();
}
}
}
/// <summary>
/// Get config within a NameValueCollection format
/// </summary>
/// <param name="text">text from txt file</param>
/// <returns>a NameValueCollection containing all keys and values</returns>
private static NameValueCollection GetConfig(string text)
{
// split text into lines
var lines = text.Split(new string[] { "\r\n" }, StringSplitOptions.None);
var config = new NameValueCollection();
// iterate lines
// split each line into sub strings using '='
// sub string 0 is a key
// sub string 1 is a value
foreach (var line in lines)
{
var nameValue = line.Split('=');
config.Add(nameValue[0], nameValue[1]);
}
return config;
}
展开全部
private const string FILE_NAME = @"D:\help.txt";
static void Main(string[] args)
{
if (!File.Exists(FILE_NAME))
{
Console.WriteLine("{0} does not exist.", FILE_NAME);
return;
}
using (StreamReader sr = File.OpenText(FILE_NAME))
{
string name = sr.ReadLine();
name = name.Substring(name.IndexOf('=') + 1, name.Length - name.IndexOf('=')-1);
Console.WriteLine(name);
string password = sr.ReadLine();
password = password.Substring(password.IndexOf('=') + 1, password.Length - password.IndexOf('=')-1);
Console.WriteLine(password);
}
}
static void Main(string[] args)
{
if (!File.Exists(FILE_NAME))
{
Console.WriteLine("{0} does not exist.", FILE_NAME);
return;
}
using (StreamReader sr = File.OpenText(FILE_NAME))
{
string name = sr.ReadLine();
name = name.Substring(name.IndexOf('=') + 1, name.Length - name.IndexOf('=')-1);
Console.WriteLine(name);
string password = sr.ReadLine();
password = password.Substring(password.IndexOf('=') + 1, password.Length - password.IndexOf('=')-1);
Console.WriteLine(password);
}
}
追问
该文件有n多行,不止2行。
这个程序只能读取前2行。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用正则:
string pattern = @"(?:.|\n)*(?<=user=)(?<User>\w+)(?:.|\n)*?(?<=password=)(?<Psd>\w+)";
RegexOptions options = RegexOptions.IgnorePatternWhitespace | RegexOptions.Multiline | RegexOptions.IgnoreCase;
Match mt = Regex.Match(txt, pattern);
var user = mt.Groups["User"].Value;
var passWord = mt.Groups["Psd"].Value;
读txt的代码就不说了,百度一下大把的有。另外这里要求user的格式是小写字母、大写字母、数字或下划线,密码的格式一样。
string pattern = @"(?:.|\n)*(?<=user=)(?<User>\w+)(?:.|\n)*?(?<=password=)(?<Psd>\w+)";
RegexOptions options = RegexOptions.IgnorePatternWhitespace | RegexOptions.Multiline | RegexOptions.IgnoreCase;
Match mt = Regex.Match(txt, pattern);
var user = mt.Groups["User"].Value;
var passWord = mt.Groups["Psd"].Value;
读txt的代码就不说了,百度一下大把的有。另外这里要求user的格式是小写字母、大写字母、数字或下划线,密码的格式一样。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用正则表达式
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询