Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Удаление символа из строки - ошибка 
:(
    Опции темы
ArniLand
Дата 1.4.2010, 18:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 227
Регистрация: 17.8.2008

Репутация: нет
Всего: нет



Нужно чтобы в программе удаляло символ веденного символа, но при компиляции выдает ошибку. Помогите исправить пожалуйста.

Ошибка
Код

c:\WINDOWS\Microsoft.NET\Framework\v3.5\Csc.exe /noconfig /nowarn:1701,1702 /errorreport:prompt /warn:4 /define:DEBUG;TRACE /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.5\System.Core.dll" /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.5\System.Data.DataSetExtensions.dll" /reference:c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Data.dll /reference:c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.dll /reference:c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Xml.dll /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.5\System.Xml.Linq.dll" /debug+ /debug:full /filealign:512 /optimize- /out:"obj\Debug\Laba3_class conteiner_sharp.exe" /target:exe Text.cs Row.cs Program.cs Properties\AssemblyInfo.cs
D:\Мои документы\Visual Studio 2008\Projects\ConsoleApplication1\ConsoleApplication1\Text.cs(69,23): warning CS0114: 'ConsoleApplication1.Text.ToString()' hides inherited member 'object.ToString()'. To make the current member override that implementation, add the override keyword. Otherwise add the new keyword.
c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\mscorlib.dll: (Related file)
D:\Мои документы\Visual Studio 2008\Projects\ConsoleApplication1\ConsoleApplication1\Text.cs(29,33): error CS0029: Cannot implicitly convert type 'string' to 'ConsoleApplication1.Row'


Код программы:
Код

//Row.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    class Row
    {

        public String dataRow;


        public Row(String str)
        {
            dataRow = str;
        }

         public string Zamena(String str) // метод удаления символа
        {
            str = dataRow.Replace('a', ' ');
            return str;
           
        }
    }
}

//Text.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    class Text
    {

        private const int countRows = 100;

        private Row[] texts;

        private int amountRows;


        public Text(int amountRow)
        {
            amountRows = amountRow;
            texts = new Row[countRows];
            amountRows = 0;
        }


        public void addRow(string str)
        {
            texts[amountRows] = new Row(str);
            texts[amountRows] = texts[amountRows].Zamena(str); //ругается на эту строчку
            amountRows++;
        }


        public void remoweRow(int numberRow)
        {
            for (int i = numberRow; i < (countRows - 1); i++)
            {
                texts[i] = texts[i + 1];
            }
            texts[countRows - 1] = null;
            amountRows--;
        }


        public void removeAll()
        {
            for (int i = 0; i < countRows; i++)
            {
                texts[i] = null;
            }
            amountRows = 0;
        }


        public string getMaxLenght()
        {
            string max = texts[0].dataRow;
            for (int i = 1; i < amountRows; i++)
            {
                if (texts[i].dataRow.Length > max.Length)
                {
                    max = texts[i].dataRow;
                }
            }

            return max;
        }

        public string ToString()
        {
            string str = "";
            for (int i = 0; i < amountRows; i++)
            {
                str = str + " " + texts[i].dataRow;
            }

            return str;
        }
    }
}

//Program.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Vedite kolichestvo strochek: ");
            int countRow = Convert.ToInt32(Console.ReadLine());

            Console.WriteLine("Vedite strochki: ");

            Text obgText = new Text(countRow);
            for (int i = 0; i < countRow; i++)
            {

                obgText.addRow(Console.ReadLine());
            }


            Console.WriteLine("----\n\n" + obgText.ToString() + "\n----\n");

            Console.WriteLine("Vedite nomer strochki dla ydalenia ");
            int numberOfRow = Convert.ToInt32(Console.ReadLine());
            if (numberOfRow < countRow)
            {

                obgText.remoweRow(numberOfRow - 1);
            }

            Console.WriteLine("----\n\n" + obgText.ToString() + "\n----\n");


            Console.WriteLine("Samaja dlinaja strochka v tekste: " + obgText.getMaxLenght());

            ;

            Console.WriteLine("Ochistka teksta.");

            obgText.removeAll();
            Console.WriteLine("----\n\n" + obgText.ToString() + "\n----\n");
        }
    }
}



Это сообщение отредактировал(а) ArniLand - 1.4.2010, 18:55
PM MAIL   Вверх
Heinzz
Дата 1.4.2010, 19:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 381
Регистрация: 12.12.2008
Где: .net

Репутация: 3
Всего: 9



texts[amountRows] = texts[amountRows].Zamena(str); //ругается на эту строчку
слева объект класса Row, справа строка


--------------------
user posted image
PM MAIL   Вверх
Certain
Дата 1.4.2010, 19:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 235
Регистрация: 18.6.2008
Где: Moscow

Репутация: нет
Всего: 4



Код

texts[amountRows].dataRow = texts[amountRows].Zamena(str);


Sorry, 
в другом посте не верно ответил

Добавлено @ 20:08
Я смотрю у Вас и код изменился...

Код

class Row
    {

        public String dataRow;


        public Row(String str)
        {
            dataRow = str;
        }

         public string Zamena(String str) // метод удаления символа
        {
           str = dataRow.Replace('a', ' ');
           return str;
        }
    }


я бы написал так
Код

class Row
    {

        public String dataRow;


        public Row(String str)
        {
            dataRow = str;
        }

         public string Zamena(char ch) // метод удаления символа
        {
            return dataRow.Replace(ch, ' ');           
        }
    }


вызов
Код

texts[amountRows].dataRow = texts[amountRows].Zamena('а');


или если нужно изменить саму строчку безвозвратно, то
Код

class Row
    {

        public String dataRow;


        public Row(String str)
        {
            dataRow = str;
        }

         public void Zamena(char ch) // метод удаления символа
        {
            dataRow= dataRow.Replace(ch, ' ');          
        }
    }



вызов:
цикл по всему списку и вызов
Код

texts[amountRows].Zamena('а');


Это сообщение отредактировал(а) Certain - 1.4.2010, 20:30
--------------------
Работа программиста и шамана имеет много общего - оба боpмочyт непонятные слова, совершают непонятные действия и не могут объяснить, как оно работает.
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0716 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.