이것은 110MB 크기의 sample.log 파일에있는 contains를 보여주는 C#으로 작성한 코드입니다.로그 파일에서 특정 필드를 추출하고 C#을 사용하여 csv 파일로 내 보냅니다.
using System;
using System.IO;
using System.Text;
class Program
{
static void Main(string[] args)
{
FileStream fs = new FileStream("sample.log", FileMode.Open, FileAccess.Read);
StreamReader sr = new StreamReader(fs);
string StrFromFile;
StringBuilder ResultStr = new StringBuilder();
while ((StrFromFile = sr.ReadLine()) != null)
{
// your separator char seems to be char 1
string[] SplitStrs = StrFromFile.Split(new char[] {(char)1});
for (int i = 0; i < SplitStrs.Length; i++)
{
if (SplitStrs[i].StartsWith("52="))
{
ResultStr.Append(SplitStrs[i] + " ");
}
else if (SplitStrs[i].StartsWith("55="))
{
ResultStr.Append(SplitStrs[i] + " ");
}
else if (SplitStrs[i].StartsWith("132="))
{
ResultStr.Append(SplitStrs[i] + " ");
}
else if (SplitStrs[i].StartsWith("133="))
{
ResultStr.Append(SplitStrs[i] + " ");
}
else if (SplitStrs[i].StartsWith("35="))
{
ResultStr.Append(SplitStrs[i] + " ");
}
}
Console.WriteLine(ResultStr);
ResultStr.Length = 0;
}
sr.Close();
fs.Close();
Console.ReadKey();
}
}
내가이 출력을 얻고
,
출력 :
35=5 52=20101219-18:05:01.522
35=A 52=20101219-18:06:01.504
35=A 52=20101219-18:06:02
35=1 52=20101219-18:06:02
35=R 52=20101219-18:06:01.847 55=EUR/USD
이제 문제는 내가 CSV 파일이 출력을 쓰기 어떻게 은? 좋은 아이디어.
감사 드리며 노력하겠습니다. – vishal
고마워요.하지만 리눅스 OS를 사용하고 있습니다. – vishal
@vishal : 질문이 어디에도 보이지 않습니다 .... –