Porównanie char do znaku nowej linii.

Dział z pytaniami o absolutne podstawy programowania w C# (dla początkujących).

Moderator: xxSlayeRxx

Porównanie char do znaku nowej linii.

Sponsor

Sponsor
 

Porównanie char do znaku nowej linii.

Postprzez Gadus88 » Wt cze 10, 2014 4:55 pm

Witam,
siedzę właśnie nad programem na zaliczenie i nie potrafię przeskoczyć jednej rzeczy. Program dotyczy mnożenia macierzy (tyle w poleceniu) i chciałbym, aby macierze były wczytywane z richtextbox'a i zapisywane w tablicy. Tu pojawia się problem, nie wiem jak ustawić warunek, aby nowa linia w textbox'ie powodowała dodanie kolejnego wiersza do tablicy.

Kod: Zaznacz cały
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace macierze_mnozenie
{
    public partial class Form1 : Form
    {
        string macierzA;
        string[,] matrixA = new string[6, 6];
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {

        }

        private void b_mnozenie_Click(object sender, EventArgs e)
        {
            int iA=0, jA=0, iB=0, jB=0, iW=0, jW=0, i=0, j=0;
            macierzA = r_macierzA.Text;
            string[] split = macierzA.Split(new Char[] { ' ', '\n' });
            foreach (string s in split)
            {
                if (s.Trim() != " ")
                {
                    matrixA[iA, jA] = s.ToString();
                    iA++;
                }
                if (s.Trim() == '\n')
                {
                    jA++;
                    iA = 0;
                }
            }
            r_wynik.Clear();
            for (j = 0; j <= jA; j++)
            {
                for (i = 0; i <= iA; i++)
                {
                    r_wynik.Text += matrixA[i, j]+('\t');
                    if (i==iA)
                    {
                        r_wynik.Text += Environment.NewLine;
                    }
                }
            }
           
        }
    }
}


a dokładnie chodzi mi o tę część:

Kod: Zaznacz cały
 if (s.Trim() == '\n')
                {
                    jA++;
                    iA = 0;
                }


Po kompilacji kodu otrzymuję błąd:

Operator '==' cannot be applied to operands of type 'string' and 'char'


a gdy porównam s.Trim() == System.Environment.NewLine program ignoruje przejście do nowej linii i wszystko zapisuje w 1 wierszu tablicy.

A tu jeszcze screen z działania programu.
http://www.tinypic.pl/czfg786nmnl0

Dziękuję za pomoc.
Gadus88
New member
 
Posty: 2
Dołączył(a): Wt cze 10, 2014 4:38 pm

Re: Porównanie char do znaku nowej linii.

Postprzez xxSlayeRxx » Wt cze 10, 2014 11:53 pm

foreach (var line in text.split('\n'))
...
xxSlayeRxx
Member
 
Posty: 661
Dołączył(a): Pt lip 08, 2011 10:24 pm

Re: Porównanie char do znaku nowej linii.

Sponsors

Sponsor
 


Powrót do Newbie

Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 4 gości