文本数据格式为
频道号或者节目票号,智能卡号,收藏类型,添加收藏时间,生成时间,节目名称,收藏ID
71630809,700086697570,VOD,2012-02-25 11:43:25,2012-02-25 11:43:25,翻仔和纯纯04(高清),23059098
71988821,700083392266,VOD,2012-02-26 15:27:56,2012-02-26 15:27:56,海贼王:513蠢蠢欲动的海贼们!惊天动地的新世界,23102901
想选出所有智能卡号一样的记录,输出该条信息。
求教为什么总是显示OutputYMS(string filename, string
s1)中 string s1有问题?
代码如下:
using System;
using System.IO;
using System.Text;
using System.Linq;
namespace 台数据信息查询
{
class Program
{
private static string[] arr1;
private static string[] arr2;
private static bool IsSameNumber(ref string s1, ref string s2)
{
arr1=s1.Split(',');//字符串以逗号分开
arr2=s2.Split(',');
s1=arr1[1];
s2=arr2[1];
if(arr1[1]==arr2[1])
return true;
else return false;
}
private static void OutputYMS(string filename, string
s1)
{
Console.WriteLine("{0}\t{1}",filename, string s1);
}
static void Main(string[] args)
{
string line1,line2;
int i,S;
i=S=0;
StreamReader sr;
string s1;
Console.WriteLine("请输入路径: ");
string path=Console.ReadLine().ToString();
Console.WriteLine();
DirectoryInfo dirInfo=new DirectoryInfo(path);
if(dirInfo.Exists)
{
Console.WriteLine("文件名"+"\t"+"统计记录");
FileInfo[] files=dirInfo.GetFiles();
foreach(FileInfo file in files)
{
sr=new StreamReader(file.FullName);
while((line2=sr.ReadLine())!=null&&(line1=sr.ReadLine())!=null)//一次读两行
{
if(IsSameNumber(ref line1,ref line2))
{
i++;
s1=Convert.ToString(line1);//转换并相减
continue;
}
else continue;
}
if(i==0)
{
Console.WriteLine("没有连续两行一样");
break;
}
else OutputYMS(Path.GetFileNameWithoutExtension(file.FullName), new s1());
}
}
else Console.WriteLine("未找到文件,请检查路径是否正确!");
Console.ReadKey(true);
}
}
}