【发布时间】:2021-01-19 21:37:06
【问题描述】:
我完全不了解 C# 或任何编程,但我想学习。过去几天我一直在网上搜索,将应该从 2 个文本文件中读取的内容放在一起并输出一个文件(格式化为一个 json 文件,我将复制/粘贴到该文件中)。所以我可以从两个文件中读取,创建一个字典对象并写入一个文件,但它只写入最后一项。我相信我会一遍又一遍地覆盖,直到最后一部分。如何附加到文件而不是覆盖?
我的代码:
using System.IO;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace WriteLangFile
{
class Program
{
static void Main(string[] args)
{
try
{
string path1 = @"C:\temp\langVars.txt";
string path2 = @"C:\temp\langValues.txt";
string[] readVars = File.ReadAllLines(path1);
string[] readVals = File.ReadAllLines(path2);
Dictionary<string, string> dictionaryVars = new Dictionary<string, string>();
for (int i = 0; i < readVars.Length; i++)
{
dictionaryVars.Add(readVars[i], readVals[i]);
}
string outputPath = ("C:\\temp\\");
string outputFileName = ("lang.txt");
string constant, value;
foreach (KeyValuePair<string, string> kvp in dictionaryVars)
{
constant = (kvp.Key);
value = (kvp.Value);
string[] lines = { ("\"LANG_\"" + constant + "\"_LANG \"" + " : { "),
("\"translations\" : {"),
("\"Lang.asp\" : {"),
("\"eng\"" + ": \"" + value + "\""),
("}"),
("}"),
("},")
};
using (StreamWriter outFile = new StreamWriter(Path.Combine(outputPath, outputFileName)))
{
foreach (var item in lines)
{
outFile.WriteLine(item.ToString());
}
}
}
}
catch (Exception e)
{
Console.WriteLine("Exception: " + e.Message);
}
finally
{
Console.WriteLine("Executing finally block.");
}
}
}
}
【问题讨论】:
标签: c# loops dictionary append console.writeline