Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/30: Рейтинг темы: голосов - 30, средняя оценка - 4.60
 Аватар для maks_IQ
21 / 21 / 1
Регистрация: 05.01.2011
Сообщений: 173

streamwriter

13.03.2011, 13:56. Показов 5991. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
доброго времени суток.
подскажите, почему не работает след. код:
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
using System;
using System.IO;
 
namespace ConsoleApplication1
{
    public class myclass
    {
        static public int strpos(string stri, char ch)
        {
            int pos = 0;
            for (int i = 0; i < stri.Length; i++)
            {
                if (stri[i] == ch)
                {
                    pos = i;
                    break;
                }
            }
            return pos;
        }
 
    }
    class Program
    {
        static void Main(string[] args)
        {
           
            
            try
            {
                
 
                string path = @"test.txt";
                if (File.Exists(path))
                {
                    Console.WriteLine("Файл найден");
                    
                }
 
                StreamWriter sw = new StreamWriter("tmp.txt");
                StreamReader sr = new StreamReader(path);
                
                    int i = 1;
                    string str;
                    while (sr.Peek() >= 0)
                    {
                        Console.WriteLine();
                        sw.WriteLine();
                        str = sr.ReadLine();
                        if (str.Length==0 || str[0] == '=' )
                        {
                            continue;
                        }
                        else
                        {
                            i = myclass.strpos(str, ':')+ 2;
                            for (int j = i; j < str.Length; j++)
                            {
                                Console.Write(str[j]);
                                sw.Write(str[j]);
                            }
 
                        }
                    }
                
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
 
        }
    }
 
}
в консоль все правильно выводит, однако в файл tmp.txt ничего не пишет
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
13.03.2011, 13:56
Ответы с готовыми решениями:

Правильная кодировка в StreamWriter
Добрый вечер. Неправильно работает вывод русских букв в консоль при помощи StreamWriter - буквы отображаются, но не те что нужно....

Формат вывода StreamWriter
SaveFileDialog saveFileDialog = new SaveFileDialog(); saveFileDialog.Filter = &quot;txt files (*.txt)|*.txt|All files...

Когда умирает StreamWriter ?
Есть класс: public class yLogFile : IDisposable { private StreamWriter fout; private string buffer; ...

3
mustiks
13.03.2011, 15:55
Не записывет в файл потому что в конце нужно закрыть поток:
C#
1
sw.Close();
 Аватар для Konctantin
970 / 773 / 171
Регистрация: 12.04.2009
Сообщений: 1,700
13.03.2011, 17:17
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
class Program
{
    static void Main(string[] args)
    {
        string path = @"test.txt";
        if (File.Exists(path))
        {
            Console.WriteLine("Файл найден");
            return;
        }
        using (StreamWriter sw = new StreamWriter("tmp.txt"))
        {
            using (StreamReader sr = new StreamReader(path))
            {
                int i = 1;
                string str;
                while (sr.Peek() >= 0)
                {
                    Console.WriteLine();
                    sw.WriteLine();
                    str = sr.ReadLine();
                    if (str.Length != 0 && str[0] != '=')
                    {
                        i = str.StrPos(':') + 2;
                        for (int j = i; j < str.Length; j++)
                        {
                            Console.Write(str[j]);
                            sw.Write(str[j]);
                        }
                    }
                }
            }
            sw.Flush();
        }
    }
}
 
public static class MyExtensions
{
    public static int StrPos(this string stri, char ch)
    {
        int pos = 0;
        for (int i = 0; i < stri.Length; i++)
            if (stri[i] == ch)
            {
                pos = i;
                break;
            }
        return pos;
    }
}
1
 Аватар для maks_IQ
21 / 21 / 1
Регистрация: 05.01.2011
Сообщений: 173
14.03.2011, 19:02  [ТС]
mustiks,
Konctantin,
спасибо, все заработало
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
14.03.2011, 19:02
Помогаю со студенческими работами здесь

StreamWriter/Reader правильно ли ?
Прочитал тему о потоках вроде понял( а мо и нет :Р ) Допустим нужно записать текст в файл ( для себя сделал вывод что просто через...

StreamWriter не пишет в файл.
using System; using System.IO; namespace GetOrder { class TnsNameWriter { public TnsNameWriter() {...

StreamWriter.WriteLine не переводит строку
При записи StreamWriter.WriteLine(string s) в txt файл записывается строка и несколько пробелов (по ходу знак переноса строки) но нужно...

Использование StreamWriter в рекурсивной функции
Здравствуйте! Пишу программу, которая при запуске выводит в текстовый файл данные в следующем формате: Hash1 - Folder1Name Hash2 -...

Сбрасывание StreamWriter в бесконечной петле
using (var sw = new StreamWriter(&quot;out.txt&quot;)) { Console.SetOut(sw); sw.AutoFlush = (true); ...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а привычная функция main(). . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru