0 / 0 / 0
Регистрация: 22.01.2017
Сообщений: 34
1

Работа с файлом "city.txt"

31.05.2017, 11:42. Показов 1249. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Есть файл "city.txt". При запуске программы нужно проверить существует ли он вообще.
Если есть спросить что нужно читать с него или дописать в него строку в конец.
Пробовал так смотреть есть ли он, но постоянно Error!
C++
1
2
3
4
5
6
7
8
9
10
11
12
void CheckFile ()
{
 
  FILE *fo;
  fo = fopen("city.txt","r");
    if (fo == 0){
        std::cout << "Ok: " <<std::endl;
    }
  fclose(fo);
 
  std::cout << "Error! " <<std::endl;
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
31.05.2017, 11:42
Ответы с готовыми решениями:

Работа с файлом txt
Здравствуйте, хотел бы задать вопрос: есть программа: #define _CRT_SECURE_NO_WARNINGS...

Работа с txt-файлом
Помогите с прогой. Исходные данные помещены в текстовый файл (в текстовом файле набор числовых...

Работа с TXT файлом!
Привет всем! Подскажите пожалуйста как считать из файла все цифры в массив! внутри файл имеет вид...

Работа с txt файлом.
Работаю с текстовым документом, совершенно путаюсь в функциях при работе. Как открыть txt файл....

Работа с txt файлом
Как можно в txt файле взять значение 2 строки или изменить его, после строки добавить еще 1 строку?...

4
309 / 272 / 220
Регистрация: 14.11.2016
Сообщений: 1,052
31.05.2017, 11:59 2
Лучший ответ Сообщение было отмечено GraK как решение

Решение

GraK, наоборот если fo == NULL, то Error должен быть, а не Ok
Текст Error и Ok поменяй местами и всё будет ОК

Сейчас у твоего кода примерно такая логика:
C++
1
2
3
4
5
6
7
8
9
10
11
12
void ПроверитьФайл ()
{
 
  Файл *fo;
  fo = Файл_открыть("город.txt","читать");
  Если (Файл_не_открыт){
        std::вывод << "ОК " <<std::конец_строки;
    }
  Закрыть(fo);
 
  std::вывод << "Ошибка! " <<std::конец_строки;
}
Добавлено через 8 минут
Наверно так должно быть:
C++
1
2
3
4
5
6
7
8
9
bool CheckFile(void)
{
 
  FILE *fo;
  fo = fopen("city.txt","r");
  if (!fo) return false;
  fclose(fo);
  return true;
}
1
0 / 0 / 0
Регистрация: 22.01.2017
Сообщений: 34
31.05.2017, 15:31  [ТС] 3
Цитата Сообщение от anapshy Посмотреть сообщение
Наверно так должно быть:
C++
1
2
3
4
5
6
7
8
9
bool CheckFile(void)
{
 
  FILE *fo;
  fo = fopen("city.txt","r");
  if (!fo) return false;
  fclose(fo);
  return true;
}
Спасибо)). Туплю

Добавлено через 3 часа 30 минут

anapshy,А может еще пожалуйста подскажите как сделать :Если файл существует, то задать пользователю вопрос что он хочет читать (нажать "r")или дописать в конец этого файла новою строку (нажать "w"). Заранее спасибо большое.
0
309 / 272 / 220
Регистрация: 14.11.2016
Сообщений: 1,052
31.05.2017, 16:21 4
Лучший ответ Сообщение было отмечено GraK как решение

Решение

GraK, примерно так
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
#include <iostream>
#include <cstdlib>
bool CheckFile(void);
void w_file(void);
void r_file(void);
int main(void)
{
  if (CheckFile()) {
      char key = 'a';
      do {
        std::cout << " 1. Записать в файл\n"
            << " 2. Прочитать из файла\n"
            << " 0. Выход\n\n"
            << " Ввод: "; std::cin >> key;
            switch(key) {
                case '1':
                    w_file();
                    break;
                case '2':
                    r_file();
                    break;
                default:
                    std::cout << "[Error] Function not found!" << std::endl << std::endl;
                    system("pause");
                    system("cls"); // очищает CMD
        }
      } while (key != '0');
  } else {
    std::cout << "[Error] File 'city.txt' not found!" << std::endl << std::endl;
  }
  system("pause");
  return 0;
}
 
bool CheckFile(void)
{
 
  FILE *fo;
  fo = fopen("city.txt","r");
  if (!fo) return false;
  fclose(fo);
  return true;
}
 
void w_file(void)
{
    FILE *file = fopen("city.txt","a") // a - открывает для добавления в конец (создает файл в случае его отсутсвия)|создание файла не грозит, т.к. мы уже проверили его на существование
    // ... ну а дальше записывай что тебе нужно
    fclose(file);
}
 
void r_file(void)
{
    FILE *file = fopen("city.txt","r") // a - открывает для добавления в конец (создает файл в случае его отсутсвия)|создание файла не грозит, т.к. мы уже проверили его на существование
    // ... ну а дальше считывай как тебе надо
    fclose(file)
}
1
0 / 0 / 0
Регистрация: 22.01.2017
Сообщений: 34
31.05.2017, 16:42  [ТС] 5
Цитата Сообщение от anapshy Посмотреть сообщение
примерно так
СПАСИБО!))))
0
31.05.2017, 16:42
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
31.05.2017, 16:42
Помогаю со студенческими работами здесь

Работа с файлом txt в c++
1. Задать статические массивы размерности n. 2. Заполнить массивы псевдослучайными числами (...

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

Манипуляция с txt файлом, непосредственно в корне программы.
Доброго времени суток, начну с простого, как манипулировать с .txt или простым текстовым файлом...

Создание txt файла в одной директории с исполняемым файлом
Здравствуйте. Имеется консольная утилита, принимающая через параметры командной строки режим...

Работа с внешним txt-файлом
здравствуйте! есть список слов в файле тхт, и нужно чтоби они поочередно, по нажатию кнопки...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

Новые блоги и статьи
Это работает. Скорость асинхронной логики велика. Вопрос видимо останется в стабильности. Плата - огонь!
Hrethgir 13.01.2025
По прошлому проекту в Logisim Evolution https:/ / www. cyberforum. ru/ blogs/ 223907/ blog8781. html прилагаю файл архива проекта Gowin Eda и снимок. Восьмибитный счётчик из сумматора+ генератор сигнала. . .
UserScript для подсветки кнопок языков программировани­­­­я в зависимости от текущего раздела
volvo 13.01.2025
В результате работы этого скрипта подсвечиваются нужные кнопки не только в форме быстрого ответа, но и при редактировании сообщения: / / ==UserScript== / / @name CF_DefaultLangSelect / / . . .
Введение в модели и алгоритмы машинного обучения
InfoMaster 12.01.2025
Машинное обучение представляет собой одну из наиболее динамично развивающихся областей искусственного интеллекта, которая фокусируется на разработке алгоритмов и методов, позволяющих компьютерам. . .
Как на Python создать нейросеть для решения задач
InfoMaster 12.01.2025
В контексте стремительного развития современных технологий особое внимание уделяется таким инструментам, как нейросети. Эти структуры, вдохновленные биологическими нейронными сетями, используются для. . .
Как создать нейросеть для генерации картинок на Python
InfoMaster 12.01.2025
Генерация изображений с помощью искусственных нейронных сетей стала одним из наиболее захватывающих направлений в области компьютерного зрения и машинного обучения. В этой статье мы рассмотрим. . .
Создание нейросети для генерации текста на Python
InfoMaster 12.01.2025
Нейросети, или искусственные нейронные сети, представляют собой модели машинного обучения, вдохновленные работой человеческого мозга. Они состоят из множества взаимосвязанных узлов, или "нейронов",. . .
Как создать нейросеть распознавания изображений на Python
InfoMaster 12.01.2025
Введение в распознавание изображений с помощью нейросетей Распознавание изображений с помощью нейронных сетей стало одним из самых впечатляющих достижений в области искусственного интеллекта. Эта. . .
Основы искуственного интеллекта
InfoMaster 12.01.2025
Искусственный интеллект (ИИ) представляет собой одну из наиболее динамично развивающихся областей современной науки и технологий. В широком смысле под искусственным интеллектом понимается способность. . .
Python и нейросети
InfoMaster 12.01.2025
Искусственные нейронные сети стали неотъемлемой частью современных технологий, революционизировав множество областей - от медицинской диагностики до автономных транспортных средств. Python, благодаря. . .
Python в машинном обучении
InfoMaster 12.01.2025
Python стал неотъемлемой частью современного машинного обучения, завоевав позицию ведущего языка программирования в этой области. Его популярность обусловлена несколькими ключевыми факторами, которые. . .
Создание UI на Python с TKinter
InfoMaster 12.01.2025
TKinter — это одна из наиболее популярных библиотек для создания графических интерфейсов пользователей (GUI) в языке программирования Python. TKinter входит в стандартную библиотеку Python, что. . .
HTML5 в разработке мобильных приложений
InfoMaster 12.01.2025
Введение: Обзор роли HTML5 в мобильной разработке В современном мире мобильных технологий HTML5 стал ключевым инструментом для разработки кроссплатформенных приложений. Эта технология произвела. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru