--
--
Você recebeu esta mensagem por fazer parte da lista de discussão oficial da Comunidade NetPonto (http://netponto.org).
---
Recebeu esta mensagem porque subscreveu ao grupo "NetPonto.org - Lista de Discussao Oficial" do Grupos do Google.
Para anular a subscrição deste grupo e parar de receber emails do mesmo, envie um email para netponto+u...@googlegroups.com.
Para mais opções, visite https://groups.google.com/d/optout.
public static class Rfc4180Writer
{public static void WriteDataTable(DataTable
sourceTable, TextWriter writer, bool
includeHeaders) {if (includeHeaders) {
IEnumerable<String> headerValues = sourceTable.Columns .OfType<DataColumn>().Select(column => QuoteValue
(column.ColumnName)); writer.WriteLine(String.Join(",",
headerValues)); } IEnumerable<String> items = null;
foreach (DataRow row in sourceTable.Rows) {
items = row.ItemArray.Select(o =>
QuoteValue(o.ToString()));writer.WriteLine(String.Join(",",
items)); } writer.Flush(); } private static string QuoteValue(string
value)
{return String.Concat("\"",
value.Replace("\"", "\"\""), "\"");
}
}
//exemplo para escrever um CSV com dados de um datatable
public static class Program {
public static void Main() {
DataTable sourceTable = new DataTable();
sourceTable.Columns.AddRange(new
DataColumn[] {new DataColumn("ID", typeof(Guid)),
new DataColumn("Date", typeof
(DateTime)),
new DataColumn("StringValue",
typeof(string)),
new DataColumn("NumberValue",
typeof(int)),
new DataColumn("BooleanValue",
typeof(bool))
}); sourceTable.Rows.Add(Guid.NewGuid(), DateTime.Now, "String1", 100, true);
sourceTable.Rows.Add(Guid.NewGuid(), DateTime.Now, "String2", 200, false);
sourceTable.Rows.Add(Guid.NewGuid(), DateTime.Now, "String3", 300, true);
using (StreamWriter writer =
new StreamWriter("C:\\dev\\dados.csv")) {
Rfc4180Writer.WriteDataTable(sourceTable, writer, true);
} }
Please consider the environment before printing this e-mail.
Joao OliveiraSoftware EngineerP: +353 831 467 299 | E: jo...@nicolauoliveira.com | Connect with me on Linkedin | OliveComputations.com
--
--
Você recebeu esta mensagem por fazer parte da lista de discussão oficial da Comunidade NetPonto (http://netponto.org).
---
Recebeu esta mensagem porque subscreveu ao grupo "NetPonto.org - Lista de Discussao Oficial" do Grupos do Google.
Para anular a subscrição deste grupo e parar de receber emails do mesmo, envie um email para netponto+u...@googlegroups.com.
Para mais opções, visite https://groups.google.com/d/optout.
--
--
Você recebeu esta mensagem por fazer parte da lista de discussão oficial da Comunidade NetPonto (http://netponto.org).
---
Recebeu esta mensagem porque subscreveu ao grupo "NetPonto.org - Lista de Discussao Oficial" do Grupos do Google.
Para anular a subscrição deste grupo e parar de receber emails do mesmo, envie um email para netponto+u...@googlegroups.com.
Para mais opções, visite https://groups.google.com/d/optout.