2017-01-11 7 views
-2

У меня есть три Arays:Объединить элементы двух массивов попарно

string[] comet1 ={comenta1,comenta2,coment3,......This way for all the selected elements}; 
string[] paramet1 = { long1,long2,lon2,......}; 
string[] parametr2={ alt1,alt2,alt2,......}; 

TextWriter tw = new StreamWriter("C:/archivo.txt") 

// añadir linea de texto al archivo de texto 
for (int i = 0; i < comet1.Length; i++) 
{ 
    tw.WriteLine(comet1[i]); 
} 

for (int a = 0; a < paramet1.Length; a++) 
{ 
    tw.WriteLine(paramet1[a]); 
} 

Используя этот код данных добавляется в файл txt следующим образом:

comenta1 
comenta2 

long1 
long2 

..... 

То, что я хочу сделать, это:

comenta1/long1 
comenta2/long2 

...... 

Я пробовал:

tw.WriteLine(comet1[i] + "\\" + paramet1[a]); 

Но это только добавляет первую строку два раза!

+2

Не должно быть 'tw.WriteLine (comet1 [i] +" \\ "+ paramet1 [i]);'? Вам понадобится только один цикл, предполагая, что вся строка '[' 'имеет ту же длину – Pikoh

+0

да ¡¡¡¡¡¡о, о, мои хорошие .... спасибо pikoh, я думаю, что это было слишком устало видеть его. – KURRY

+0

@ KURRY, 1 /. Что ты пытаешься сделать ? 2 /. Что делать, если у вас есть неравномерные исходные данные? 3 /. Вы начинаете с того, что у меня есть массив деревьев .. но используются только два, я должен что-то упустить. 4 /. Что, если в вашей строке есть \? –

ответ

1

Вы можете сделать это с одним вкладышем с использованием метода Enumerable.Zip расширения найденную в System.Linq и String.Join:

tw.WriteLine(string.Join(Environment.NewLine, comet1.Zip(paramet1, (f, s) => $"{f}\\{s}"))); 

Прочитайте документацию обоих методов в условии ссылки чтобы точно понимать, что они делают.

0

Попробуйте это:

for (int i = 0; i < comet1.Length; i++) 
{ 
    tw.WriteLine(string.Concat(comet1[i], "/", paramet1[i])); 
} 
+0

@InBetween почему это проголосовали? –

+0

Единственный вопрос, который я вижу, - это 'paramet1.Length' <' comet1.Length'. На самом деле ваше состояние должно сравнивать «i» с обоими. – juharr

+1

Почему вы решили, что я отклонил ваш ответ? Я понятия не имею, почему его ниспровергали. – InBetween

Смежные вопросы