Я написал текстовый файл. Первым элементом каждой строки из этого текстового файла, который должен быть ключевым и остальным, являются значения. Мой текстовый файл выглядит this-Как сохранить все значения в папке с именем с именем C#
Flensburg;Nordertor;Naval Academy Mürwik;Flensburg Firth
Kiel;Laboe Naval Memorial;Zoological Museum of Kiel University;Kieler Förde
Lübeck;Holstentor;St. Mary's Church, Lübeck;Passat (ship);Burgtor;Lübeck Museum of Theatre Puppets;Trave
Для моего проекта цели, мне нужно создать .json данные для каждого из значений и хранить эти VALES в ключевые folder.As имя Я очень новая трактовка этой ситуации я не получив правильную логику для этого. Тем не менее, я попытался найти способ, которым я могу создать папку с именем ключа и только одну вложенную папку. Но мне нужно создать папку значений внутри папки ключей. Как мне это сделать.
Мои POI класс, от которого я прочитал текстовый файл в качестве значения ключа
IS-public class POI
{
Dictionary<string, List<string>> poi = new Dictionary<string, List<string>>();
public bool ContainsKey(string key) { return this.poi.ContainsKey(key); }
public List<string> GetValue(string key) { return this.poi[key]; }
public void POIList()
{
foreach (string line in File.ReadLines("POIList.txt"))
{
string[] parts = line.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries);
poi.Add(parts[0], new List<string>());
poi[parts[0]] = new List<string>(parts.Skip(1));
}
}
}
в Form1.cs
private void button1_Click(object sender, EventArgs e)
{
JSON_Output Json = new JSON_Output();
Json.ToJsonForLocation(comboBox1.Text);
}
также я установил selectedindexchange от combobox2
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
if (comboBox1.SelectedItem != null)
{
POI poi1 = new POI();
poi1.POIList();
string txt = comboBox1.SelectedItem.ToString();
if (poi1.ContainsKey(txt))
{
List<string> points = poi1.GetValue(txt);
comboBox2.Items.Clear();
comboBox2.Items.AddRange(points.ToArray());
}
}
}
Теперь, когда файл json, созданный для болящего значения, -
public void ToJsonForLocation(string name)
{
var startPath = Application.StartupPath;
string folderName = Path.Combine(startPath, "Text_ImageWithHash");
string SubfolderName = Path.Combine(folderName, name);
//string folderName = Path.Combine(startPath, "Text_ImageWithHash");
System.IO.Directory.CreateDirectory(SubfolderName);
string fileName = name + ".json";
var path = Path.Combine(SubfolderName, fileName);
var Jpeg_File = new DirectoryInfo(startPath + @"\Image\" + name).GetFiles("*.jpg");
POIData Poi=new POIData();
Poi.Shorttext = File.ReadAllText(startPath + @"\Short Text\" + name + ".txt");
Poi.GeoCoordinates=GeosFromString(startPath + @"\Latitude Longitude\" + name + ".txt");
Poi.Images=new List<string> { Jpeg_File[0].Name};
string json = JsonConvert.SerializeObject(Poi,Formatting.Indented);
File.WriteAllText(path , json);
}
Это мой код при запуске программы.
после нажатия кнопки 1 Папка Text_image_withHash создается в каталоге конфигурации.
Теперь, если я открываю папку я могу увидеть F находит следующие папки, которая является ключом значения из текстового файла
кнопки 2 После включения для выпадающего списка два генерируется папка значения, но не в ключевую папку. Но как обычно, в Text_Image_withHash.
Немного непонятно, что вы просите, попробуйте уточнить свой вопрос. –
Я должен второй, waht @die maus сказал. Ваш первый абзац не соответствует вашей второй или, по крайней мере, в моей голове, у них почти нет связи. Вы можете четко указать, в какой момент вашего письменного кода должна произойти конкретная вещь, используя комментарии. – Kevkong
@ Kevkong. У меня есть текстовый файл. У меня есть название города и много интересных мест в текстовом файле. для моего проекта я должен получить данные json из web api для каждого интересного местоположения, которое будет содержать геолокацию, краткое описание и некоторую другую информацию. они будут сохранены в формате JSON как имя каждого имени значения. Эти файлы должны автоматически сохраняться в папке с именем ключа, которую я создаю по моему коду. Я не могу автоматически сохранять все значения в папке с именем ключа. В этом случае я не могу обрабатывать логику словаря. – Nowshin