C# 文件中查找字符串 15

比如a.txt中内容为:......user=abcdpassword=123456......怎么在C#中查找user是什么?password是什么?求代码... 比如a.txt中内容为:
......
user=abcd
password=123456
......
怎么在C#中查找user是什么?password是什么?
求代码
展开
 我来答
郏鸿祯C6
2013-08-15 · TA获得超过4548个赞
知道小有建树答主
回答量:1601
采纳率:50%
帮助的人:1181万
展开全部

我可以帮你写一个,稍等。

——————————————————————————————————

写好了,谢谢等待。以下是截图和核心代码,完整的源码在附件中,欢迎追问。

核心代码:

/// <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;
        }


yiran_chenlove
2013-08-15 · 超过26用户采纳过TA的回答
知道答主
回答量:62
采纳率:0%
帮助的人:63.6万
展开全部
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);
}
}
追问
该文件有n多行,不止2行。
这个程序只能读取前2行。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友8e2a3c8
2013-08-15 · TA获得超过958个赞
知道小有建树答主
回答量:330
采纳率:100%
帮助的人:381万
展开全部
用正则:
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的格式是小写字母、大写字母、数字或下划线,密码的格式一样。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
65623006
2013-08-15 · 超过70用户采纳过TA的回答
知道小有建树答主
回答量:316
采纳率:0%
帮助的人:68.4万
展开全部
用正则表达式
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式