如何用C#将两行文本文件内容分别赋值给PhoneNumber和Location变量
C# 两行文件解析赋值解决方案
实现逻辑
你的需求是读取固定两行的文件,第一行赋值给PhoneNumber变量,第二行赋值给Location变量,有两种常用实现方式:
方式1:while循环+计数器(兼容后续可能新增行的场景)
int lineIndex = 0; string PhoneNumber = string.Empty; string Location = string.Empty; string line; using (var sr = new StreamReader(incoming)) { while ((line = sr.ReadLine()) != null) { // Trim()用于去除行首尾的空白字符、换行符,不需要可以删除 string currentContent = line.Trim(); if (lineIndex == 0) { PhoneNumber = currentContent; } else if (lineIndex == 1) { Location = currentContent; // 已经读取到目标第二行,直接跳出循环节省性能 break; } lineIndex++; } }
方式2:直接读取两次(更适合固定只有两行的场景,代码更简洁)
确定文件只有两行的情况下,不需要循环,直接调用两次ReadLine()即可:
string PhoneNumber = string.Empty; string Location = string.Empty; using (var sr = new StreamReader(incoming)) { // 读取第一行,空值兼容处理 PhoneNumber = sr.ReadLine()?.Trim() ?? string.Empty; // 读取第二行,空值兼容处理 Location = sr.ReadLine()?.Trim() ?? string.Empty; }
注意事项
- 如果文件行顺序是第一行存Location、第二行存PhoneNumber,交换两处赋值的位置即可
- 如果需要跳过空行,读取到行内容后判断为空就跳过本次处理、不计数即可
- 上述代码里的空值兼容处理可以避免文件行数不足时抛出空引用异常
内容的提问来源于stack exchange,提问作者brad wykoff
相关产品推荐
相关产品推荐

