文件读取方法(FileHelpers) z
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using FileHelpers;
using FileHelpers.DataLink;
namespace ConsoleApplication
{
[DelimitedRecord("\t")]
public class LogInfo
{
[FieldConverter(ConverterKind.Date, "yyyy-MM-dd HH:mm:ss.FFF")]
public DateTime DateTime;
public string empty;
public string Method;
public string IsSuccess;
public string ElapsedMilliseconds;
public string TnsName;
public string CommandText;
}
class Program
{
protected static string GetInsertSqlCust(object record)
{
LogInfo obj = (LogInfo)record; return string.Format("INSERT INTO Info " + "([DateTime]" + ",[Methord]" + ",[IsSuccess]" + ",[ElapsedMilliseconds]" + ",[TnsName]" + ",[CommandText])" + " VALUES " + "('{0}'" + ",'{1}'" + ",{2}" + ",{3}" + ",'{4}'" + ",'{5}')",
obj.DateTime.ToString().Replace("'", "\""),
obj.Method.Replace("'", "\""),
obj.IsSuccess.Replace("'", "\""),
obj.ElapsedMilliseconds.Replace("'", "\""),
obj.TnsName.Replace("'", "\""),
obj.CommandText.Replace("'", "\""));
}
static void Main(string[] args)
{
FileHelperEngine engine = new FileHelperEngine(typeof(CustomersTabIgnored3));
CustomersTabIgnored3[] res = (CustomersTabIgnored3[])engine.ReadFile(@"E:\Server\DACServer\log\Info\2010-04-09 16.log");
foreach (CustomersTabIgnored3 record in res)
{
Console.WriteLine(record.DateTime.ToString());
Console.WriteLine(record.Method);
Console.WriteLine(record.IsSuccess);
Console.WriteLine(record.ElapsedMilliseconds);
Console.WriteLine(record.TnsName);
Console.WriteLine(record.CommandText);
}
Console.ReadLine();
SqlServerStorage storage = new SqlServerStorage(typeof(LogInfo));
storage.ServerName = "127.0.0.1"; storage.DatabaseName = "LogInfo";
storage.InsertSqlCallback = new InsertSqlHandler(GetInsertSqlCust);
try
{
FileDataLink link = new FileDataLink(storage);
link.InsertFromFile(@"E:\Server\DACServer\log\Info\2010-04-09 16.log");
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
}
}
文件读取方法(FileHelpers) z的更多相关文章
- 大文件读取方法(C#)
之前都是用StreamReader.ReadLine方法逐行读取文件,自从.NET4有了File.ReadLines这一利器,就再也不用为大文件发愁了. File.ReadLines在整个文件读取到内 ...
- C# 文件读取方法,自己写的例子,保存一下,备用
/// <summary> /// 将output.config内容传到app.config /// </summary> string ReadString; //两个地址 ...
- python 文件读取方法详解
话不多说直接码 # 绝对路径 # f = open('/Users/fangxiang/Downloads/我的古诗.text', mode='r', encoding='utf-8') # cont ...
- golang 文件读取
Golang 的文件读取方法很多,刚上手时不知道怎么选择,所以贴在此处便后速查. 一次性读取 小文件推荐一次性读取,这样程序更简单,而且速度最快. 复制代码 代码如下: func ReadAll(fi ...
- Javascript写入txt和读取txt文件的方法
文章主要介绍了Javascript写入txt和读取txt文件的方法,需要的朋友可以参考下1. 写入 FileSystemObject可以将文件翻译成文件流. 第一步: 例: 复制代码 代码如下: Va ...
- C#读取ini文件的方法
最近项目用到ini文件,读取ini文件,方法如下: using System; using System.Collections.Generic; using System.Linq; using S ...
- C#中常用的几种读取XML文件的方法
1.C#中常用的几种读取XML文件的方法:http://blog.csdn.net/tiemufeng1122/article/details/6723764/
- Spark Scala 读取GBK文件的方法
1. 在生产环境下,很多文件是GBK编码格式的,而SPARK 常用的textFile方法默认是写死了读UTF-8格式的文件,其他格式文件会显示乱码 用如下代码实现读取GBK文件的方法 import o ...
- asp.net读取excel文件多种方法
asp.net读取excel文件的三种方法示例,包括采用OleDB读取Excel文件.引用的com组件读取Excel文件.用文件流读取. 方法一:采用OleDB读取Excel文件 把Excel文件 ...
随机推荐
- python的下划线
首先是单下划线开头,这个被常用于模块中,在一个模块中以单下划线开头的变量和函数被默认当作内部函数,如果使用 from a_module import * 导入时,这部分变量和函数不会被导入.不过值得注 ...
- Maven-常规问题
1.编译(compile)Maven项目时,报错: -Dmaven.multiModuleProjectDirectory system property is not set. 处理方案:Windo ...
- MySQL Flashback 闪回功能详解
1. 简介 mysqlbinlog flashback(闪回)用于快速恢复由于误操作丢失的数据.在DBA误操作时,可以把数据库恢复到以前某个时间点(或者说某个binlog的某个pos).比如忘了带wh ...
- linux 入门测验
cd . 当前目录.. 返回上一级目录 ../../../返回多级目录 grep "目标信息" 目标地址 -v :显示没有被匹配的信息 mkdir -p:创建多级目录 mkdir ...
- (转)Cobbler无人值守批量安装Linux系统
本文目录: 1.1 pxe安装系统 1.2 cobbler基本介绍 1.3 安装和配置cobbler 1.3.1 安装cobbler 1.3.2 配置dhcp和tftp 1.4 cobbler从本地光 ...
- cloudermanager安装过程中出现W:GPG error错误 http://ppa.launchpad.net.trusty Release **** 4DF9B28CA252A784(图文详解)
不多说,直接上干货! 问题详情 解决办法 sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 4DF9B28CA252A784 ...
- 在NuoDB上运行Asterisk
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文来自云+社区翻译社,作者Hans362 您可能已经熟悉Asterisk,一个广泛部署的开源Telephony框架.如果你不太熟悉,你应该 ...
- nyoj 791——Color the fence——————【贪心】
Color the fence 时间限制:1000 ms | 内存限制:65535 KB 难度:2 描述 Tom has fallen in love with Mary. Now Tom w ...
- BNU4286——Adjacent Bit Counts——————【dp】
Adjacent Bit Counts Time Limit: 1000ms Memory Limit: 65536KB 64-bit integer IO format: %lld Jav ...
- JS常用的设计模式(2)——简单工厂模式
简单工厂模式是由一个方法来决定到底要创建哪个类的实例, 而这些实例经常都拥有相同的接口. 这种模式主要用在所实例化的类型在编译期并不能确定, 而是在执行期决定的情况. 说的通俗点,就像公司茶水间的饮料 ...