本文整理汇总了C#中CsvWriter.Write方法的典型用法代码示例。如果您正苦于以下问题:C# CsvWriter.Write方法的具体用法?C# CsvWriter.Write怎么用?C# CsvWriter.Write使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CsvWriter
的用法示例。
在下文中一共展示了CsvWriter.Write方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: TestWritingSingleValuesFirst
public void TestWritingSingleValuesFirst()
{
using (var writer = new StringWriter())
{
var csv = new CsvWriter(writer, new CsvSettings());
csv.Write("1");
csv.Write("2");
csv.WriteLine("3");
csv.Write("4");
csv.WriteLine("5", "6");
String expected = @"1,2,3" + Environment.NewLine
+ "4,5,6" + Environment.NewLine;
Assert.AreEqual(expected, writer.ToString());
}
}
示例2: Save
public static void Save(this DataTable table, Stream stream, TableFormat format)
{
switch (format)
{
case TableFormat.SerializedXml:
{
XmlSerializer serializer = new XmlSerializer(typeof(DataTable));
serializer.Serialize(stream, table);
} break;
case TableFormat.SerializedBin:
{
BinaryFormatter serializer = new BinaryFormatter();
serializer.Serialize(stream, table);
} break;
case TableFormat.Csv:
{
var writer = new CsvWriter(new StreamWriter(stream));
writer.Delimiter = ";";
writer.Write(table);
}
break;
case TableFormat.Tsv:
{
var writer = new CsvWriter(new StreamWriter(stream));
writer.Delimiter = "\t";
writer.Write(table);
}
break;
case TableFormat.CSharp:
{
var matrix = table.ToMatrix();
var str = matrix.ToString(CSharpMatrixFormatProvider.InvariantCulture);
TextWriter writer = new StreamWriter(stream);
writer.WriteLine(str);
}
break;
case TableFormat.OctaveMatFile:
case TableFormat.OpenDocument:
case TableFormat.OlderExcel:
case TableFormat.LibSVM:
case TableFormat.Idx:
throw new NotSupportedException();
}
}
示例3: CsvWriter_WithThreeDefinedColumns_WritesValuesInOrder
public void CsvWriter_WithThreeDefinedColumns_WritesValuesInOrder()
{
// Arrange
CsvWriter<object> writer = new CsvWriter<object>(A.Dummy<IExcelSanitizer>());
writer.DefineColumn("Column 1", x => "Value 1");
writer.DefineColumn("Column 2", x => "Value 2");
writer.DefineColumn("Column 3", x => "Value 3");
object[] data = new object[2];
// Act
string csv = writer.Write(data);
// Assert
string expectedValue =
"Column 1,Column 2,Column 3" + Environment.NewLine +
"Value 1,Value 2,Value 3" + Environment.NewLine +
"Value 1,Value 2,Value 3" + Environment.NewLine;
Assert.Equal(expectedValue, csv);
}
示例4: Write
/// <summary>
/// Writes the specified table into a file or stream.
/// </summary>
///
public void Write(DataTable table, Stream stream)
{
var writer = new CsvWriter(new StreamWriter(stream));
writer.Write(table);
}
示例5: TestWritingFormatting
public void TestWritingFormatting()
{
using (var writer = new StringWriter())
{
var csv = new CsvWriter(writer, new CsvSettings());
csv.FormattingCulture = CultureInfo.GetCultureInfo("et-EE");
csv.Write(100.33333, "F2");
csv.Write(new DateTime(2012, 02, 28), "d");
String expected = @"""100,33"",28.02.2012";
Assert.AreEqual(expected, writer.ToString());
}
}
示例6: CsvWriter_WithFuncColumn_UsesFuncToRetrieveValues
public void CsvWriter_WithFuncColumn_UsesFuncToRetrieveValues()
{
// Arrange
CsvWriter<int> writer = new CsvWriter<int>(A.Dummy<IExcelSanitizer>());
writer.DefineColumn("Column 1", x => x * x);
List<int> data = new List<int>() { 1, 2, 3, 4 };
// Act
string csv = writer.Write(data);
// Assert
string expectedValue =
"Column 1" + Environment.NewLine +
"1" + Environment.NewLine +
"4" + Environment.NewLine +
"9" + Environment.NewLine +
"16" + Environment.NewLine;
Assert.Equal(expectedValue, csv);
}
示例7: CsvWriter_WithFormatAsText_EscapesValuesAndWritesAsFormula
public void CsvWriter_WithFormatAsText_EscapesValuesAndWritesAsFormula()
{
// Arrange
CsvWriter<string> writer = new CsvWriter<string>(A.Dummy<IExcelSanitizer>());
writer.DefineColumn("Column 1", x => x, true);
List<string> data = new List<string>() { "01234 555 555", "The man said \"Hello World\" to the dog." };
// Act
string csv = writer.Write(data);
// Assert
string expectedValue =
"Column 1" + Environment.NewLine +
"=\"01234 555 555\"" + Environment.NewLine +
"=\"The man said \"\"Hello World\"\" to the dog.\"" + Environment.NewLine;
Assert.Equal(expectedValue, csv);
}
示例8: CsvWriter_WithExcelSanitizer_SanitizesValues
public void CsvWriter_WithExcelSanitizer_SanitizesValues()
{
// Arrange
IExcelSanitizer sanitizer = A.Fake<IExcelSanitizer>();
A.CallTo(() => sanitizer.IsThreat("Bad String")).Returns(true);
A.CallTo(() => sanitizer.Sanitize("Bad String")).Returns("Sanitized Bad String");
CsvWriter<string> writer = new CsvWriter<string>(sanitizer);
writer.DefineColumn("Column 1", x => x);
List<string> data = new List<string>() { "Good String", "Bad String" };
// Act
string csv = writer.Write(data);
// Assert
string expectedValue =
"Column 1" + Environment.NewLine +
"Good String" + Environment.NewLine +
"Sanitized Bad String" + Environment.NewLine;
Assert.Equal(expectedValue, csv);
}
示例9: dataFileAnalyze
//.........这里部分代码省略.........
}
}
foreach (var row in data2pre)
{
if (char.IsNumber(row[0], 0))
{
var record = new List<string>();
record.Add(row[0]);
record.Add(row[2]);
record.Add(row[3]);
record.Add(row[6]);
record.Add(row[7]);
data2.Add(record);
}
}
//エンコーダの積算値を記録開始時のものを基準にする
//これは複数回動かしていると最初に帰ってくるエンコーダの値が0でなくなるため
m1.offsetCnt = int.Parse(data1[0][3]);
m2.offsetCnt = int.Parse(data2[0][4]);
m3.offsetCnt = int.Parse(data2[0][3]);
m4.offsetCnt = int.Parse(data1[0][4]);
//要素数の少ないほうを基準にする(最後のほうのデータを受け取る前に終了している可能性があるので)
for (var i = 0; i < Math.Min(data1.Count, data2.Count); i++)
{
double time = i * dt;
//ロボットの状態を更新
m1.update(int.Parse(data1[i][1]), int.Parse(data1[i][3]));
m2.update(int.Parse(data2[i][2]), int.Parse(data2[i][4]));
m3.update(int.Parse(data2[i][1]), int.Parse(data2[i][3]));
m4.update(int.Parse(data1[i][2]), int.Parse(data1[i][4]));
robo.update(m1, m2, m3, m4);
//出力するデータの用意
var record = new List<string>();
//record.Add(((int.Parse(data1[i][0]) + int.Parse(data2[i][0])) / 2).ToString());
record.Add(time.ToString());
record.Add(m1.PWM.ToString());
record.Add(m2.PWM.ToString());
record.Add(m3.PWM.ToString());
record.Add(m4.PWM.ToString());
record.Add(m1.Count.ToString());
record.Add(m2.Count.ToString());
record.Add(m3.Count.ToString());
record.Add(m4.Count.ToString());
record.Add(m1.Velocity.ToString());
record.Add(m2.Velocity.ToString());
record.Add(m3.Velocity.ToString());
record.Add(m4.Velocity.ToString());
record.Add(m1.Acceleration.ToString());
record.Add(m2.Acceleration.ToString());
record.Add(m3.Acceleration.ToString());
record.Add(m4.Acceleration.ToString());
record.Add(m1.Angle.ToString());
record.Add(m2.Angle.ToString());
record.Add(m3.Angle.ToString());
record.Add(m4.Angle.ToString());
record.Add(robo.VelocityX.ToString());
record.Add(robo.VelocityY.ToString());
record.Add(robo.AnglerVelocity.ToString());
record.Add(robo.X.ToString());
record.Add(robo.Y.ToString());
record.Add(robo.Angle.ToString());
wdata.Add(record);
}
//結果の出力
//出力用のフォルダがない場合は生成
if (!Directory.Exists(dataFolder + "\\processed"))
{
Directory.CreateDirectory(dataFolder + "\\processed");
}
using (var writer = new CsvWriter(dataFolder + "\\processed\\" + filename + ".csv"))
{
var outData = new List<List<string>>();
//1行目にコメントを書き込み
var com = new List<string>();
com.Add("#");
com.AddRange(comment.Split(','));
outData.Add(com);
//2行目にデータ名を書き込み
outData.Add(new List<string> { "Time[s]", "PWM M1", "PWM M2", "PWM M3", "PWM M4",
"Count M1", "Count M2", "Count M3", "Count M4",
"Velocity M1 [m/s]", "Velocity M2", "Velocity M3", "Velocity M4",
"Acceleration M1 [m/s/s]", "Acceleration M2", "Acceleration M3", "Acceleration M4",
"Angle M1 [rad]", "Angle M2", "Angle M3", "Angle M4",
"Velocity X [m/s]", "Velocity Y [m/s]", "Angler Velocity[rad/s]",
"Position X [m]", "Position Y [m]", "Angle[rad]"
});
outData.AddRange(wdata);
writer.Write(outData);
}
writeLog("ファイルの書き込み完了 : " + dataFolder + "\\processed\\" + filename + ".csv");
}