開源專案 10 CSV

2022-02-25 12:06:38 字數 4151 閱讀 4595

using

newtonsoft.json;

using

system;

using

system.collections.generic;

using

system.data;

using

system.io;

using

system.linq;

using

system.reflection;

using

system.text;

using

system.threading.tasks;

namespace

}public

class

crm_cm_contactinfo2

public

string remark

}public

class

csvfilehelper

filestream fs = new

filestream(fullpath, system.io.filemode.create, system.io.fileaccess.write);

//streamwriter sw = new streamwriter(fs, system.text.encoding.default);

streamwriter sw = new

streamwriter(fs, system.text.encoding.utf8);

string data = ""

;

//寫出列名稱

for (int i = 0; i < dt.columns.count; i++)

}sw.writeline(data);

//寫出各行資料

for (int i = 0; i < dt.rows.count; i++)

\"", str);

}data +=str;

if (j < dt.columns.count - 1

)

}sw.writeline(data);

}sw.close();

fs.close();

}//////

將csv檔案的資料讀取到datatable中

/// ///

csv檔案路徑

///返回讀取了csv資料的datatable

public

static datatable opencsv(string

filepath)

}else

dt.rows.add(dr);}}

if (aryline != null && aryline.length > 0

)

sr.close();

fs.close();

return

dt; }

}//////

反射類

/// public

static

class

myreflection

list

entities = new list();

foreach (datarow row in

dt.rows)

else

else}//

//type type = p.propertytype;

//if (type.isgenerictype && type.getgenerictypedefinition().equals(typeof(nullable<>)))

//判斷convertsiontype是否為nullable泛型類

//

convert.changetype(cellvalue, type), null);

//2、自定義 這種很傻,但當前解決速度最快

//if (p.propertytype.name.equals("int32"))

//

//else if (p.propertytype.name.equals("string"))

//

//else if (p.propertytype.name.equals("nullable`1"))

/////

/其它型別 暫時不管

//1、欄位不為空可以用這種

value, null);

} });

entities.add(entity);

}return

entities;

}public

static listdatatabletoentities2(this datatable dt) where t : class, new

()

list

entities = new list();

foreach (datarow row in

dt.rows)

else

else}}

});entities.add(entity);

}return

entities;

}public

static listdatatabletoentities3(datatable dt) where t : class, new

()

list

entities = new list();

foreach (datarow row in

dt.rows)

else

else}//

//type type = p.propertytype;

//if (type.isgenerictype && type.getgenerictypedefinition().equals(typeof(nullable<>)))

//判斷convertsiontype是否為nullable泛型類

//

convert.changetype(cellvalue, type), null);

//2、自定義 這種很傻,但當前解決速度最快

//if (p.propertytype.name.equals("int32"))

//

//else if (p.propertytype.name.equals("string"))

//

//else if (p.propertytype.name.equals("nullable`1"))

/////

/其它型別 暫時不管

//1、欄位不為空可以用這種

value, null);

} });

entities.add(entity);

}return

entities;

}//////

跟屬性賦值

/// ///

//////

///public

static

void assignvaluetoattribute(t model, string name, object

value)

else

else}}

//////

獲取屬性值

/// ///

//////

///public

static

object getvaluebyattribute(t model, string

name)

//////

跟屬性賦值

/// ///

//////

///public

static

void assignvaluetoattribute(t model, string

name, t model_old)

}}

10個Android開源專案

1.android團隊提供的示例專案 如果不是從學習android sdk中提供的那些樣例 開始,可能沒有更好的方法來掌握在android這個 框架上開發。由android的核心開發團隊提供了15個優秀的示例項 目,包含了 遊戲 影象處理 時間顯示 開始 選單快捷方式等。附件 remotedroid...

10個PHP位元幣開源專案

如果你是乙個phper,如果你希望學習區塊鏈,那麼本文列出的 10個開源的php位元幣專案,將有助於你了解在自己的應用中 如何加入對位元幣的支援。bitcoin php是位元幣協議的php實現,支援驗證指令碼的構建與解析 分層確定性金鑰 裸交易 隔離見證等諸多特性,功能極其豐富 源 minera是乙...

python專案 10大Python開源專案推薦

本文是 mybridge 挑選的 10 個 python 開源專案,github 平均star 2135,希望你能夠喜歡 rank 1 requests html v0.9 7385 stars on github,來自kenneth reitz 該庫旨在盡可能簡單直觀地解析 html,僅支援 py...