С Новым годом! Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
8 / 8 / 5
Регистрация: 21.11.2012
Сообщений: 98

Доступ к массиву string

23.10.2015, 11:37. Показов 1340. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Столкнулся с проблемой. Есть, например, код:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
using System;
using System.Windows.Forms;
using System.IO;
 
namespace test
{
    public partial class Form1 : Form
    {
        string[] m;
        int q = 0; //количество строк в файле
   //пусть в этом методе я формирую массив
        private void formArray() 
        {
             q= ;//считаю из файла по принципу через цикл while(*.ReadLine() != false) q++;
             /*теперь мне надо чтобы массив М был размерностью q*/             
             m = new string[q];
             /*тут записываю через цикл каждую строку в массив:*/
             for (int i = 0; i < q; i++)
            {
                m[i] = *.ReadLine();
            }
        }
    //а тут существует ещё 1 метод, в котором есть блок работы с созданным стринговым массивом
       private void job()
       {
            MessageBox.Show(m[0]);
       }
    }
}
Собственно, вопрос: почему MessageBox.Show(m[0]); мне выведет "ничего", ну т.е. пустую строку? Как это можно (ведь нужно! :-) ) исправить? Большое спасибо
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
23.10.2015, 11:37
Ответы с готовыми решениями:

Доступ к массиву
Как получить доступ к массиву (или вообще к любой переменной) в другом обработчике событий? public void button1_Click(object sender,...

Доступ к массиву контролов
Добрый день, почему-то не получается получить доступ к массиву контролов. Вот массив: public partial class HITS : Form { ...

доступ к массиву из нескольких кнопок
Есть задача: решение СЛАУ несколькими методами. Т е нужно работать с массивом. где в проекте (Visual Studio C++ 2010, приложение Windows...

7
 Аватар для Sanya_sa
912 / 816 / 333
Регистрация: 03.02.2015
Сообщений: 5,276
Записей в блоге: 9
23.10.2015, 12:25
https://msdn.microsoft.com/ru-... .110).aspx

Не подойдёт?
0
8 / 8 / 5
Регистрация: 21.11.2012
Сообщений: 98
23.10.2015, 12:36  [ТС]
Sanya_sa, нет. Мне нужно именно обратиться к уже созданному массиву в методе, где MessageBox.Show(m[0]);. А как это сделать - не знаю
0
 Аватар для Sanya_sa
912 / 816 / 333
Регистрация: 03.02.2015
Сообщений: 5,276
Записей в блоге: 9
23.10.2015, 12:40
MessageBox.Show(m[0].ToString());

Так?

Добавлено через 1 минуту
Глупость написал)))).

Добавлено через 1 минуту
Он и так String ))) проверте его m может он просто пут??? А что за ошибку пишет VS?
0
8 / 8 / 5
Регистрация: 21.11.2012
Сообщений: 98
23.10.2015, 12:42  [ТС]
Sanya_sa, "В экземпляре объекта не задана ссылка на объект" в моем случае
0
 Аватар для Sanya_sa
912 / 816 / 333
Регистрация: 03.02.2015
Сообщений: 5,276
Записей в блоге: 9
23.10.2015, 12:47
Логично )))) new забыли , но даже если забыли то и ссылку на уже имеющийся массив например при чтении тоже не пишите в m)))

Добавлено через 1 минуту
m у Вас пустой
1
8 / 8 / 5
Регистрация: 21.11.2012
Сообщений: 98
23.10.2015, 12:51  [ТС]
Sanya_sa, решено))) но проблема была не в этом. Я два раза считывал в одном стримридере.. т.е. сначала посчитал кол-во строк. Не закрыв поток, в том же потоке начал вносить в массив строки. А потом аж закрыл ридер. Т.е. курсор в потоке остался в конце, а я и дальше считывал)) Кстати, сопутствующий вопрос. Не знаешь, как перенести курсор в начала файла в StreamReader? Ну чтоб начать сначала файла считывание.

Добавлено через 1 минуту
Sanya_sa, нет. M тут не пустой. Проверял предварительно длину массива тут. Всё было ок. Да и через 2 стримридера всё ок работает
0
 Аватар для Sanya_sa
912 / 816 / 333
Регистрация: 03.02.2015
Сообщений: 5,276
Записей в блоге: 9
23.10.2015, 12:56
var m = File.ReadLines("ПУТЬ"); так не проще?

по ридеру
https://msdn.microsoft.com/ru-... .110).aspx
Метод Read;
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
23.10.2015, 12:56
Помогаю со студенческими работами здесь

Доступ к массиву из соседних потоков
Когда в потоках AvergeDistance и range_numbers , обращаются к массиву A, вылетает с ошибкой: Ссылка на объект не указывает на...

Получить доступ к массиву в методе другого класса
Всем привет! Я все же еще новичок в программировании и вот возник вопрос. Есть матрица, которая создается в методе MatrixLoad класса...

Асинхронный доступ к массиву
День добрый! Как организовать асинхронный доступ к массиву, который будет использоваться только для чтения из разных потоков? Не...

Доступ к паре в map<string, vector<pair<string, string>>>Temp
Подскажите пожалуйста как получить данные в векторе пар ? void showData(const map&lt;string, vector&lt;pair&lt;string,...

Принадлежность S[i] к массиву (S:string)
Ребят не могу сформировать код. Каким образом можно задать приравнивание элемента строки к массиву: где n:array of char; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru