Запись в файл

Работа с файлами и базами данных
Ответить
nadin
junior
junior
Сообщения: 58
Зарегистрирован: 23 мар 2009, 16:49
Версия LabVIEW: 8.2,8.6,2010
Откуда: Россия
Контактная информация:

Запись в файл

Сообщение nadin »

Помогите, пожалуйста: мне надо выполнять запись в файл,
когда нажата кнопка Запись, а когда ее отжимаем, надо запись остановить.
Вложения
запись в файл.vi
(13.02 КБ) 262 скачивания
Аватара пользователя
Forward

Activity Tutorials Black
professional
professional
Сообщения: 337
Зарегистрирован: 03 мар 2008, 12:41
Награды: 3
Версия LabVIEW: 2010
Откуда: Кишинев
Контактная информация:

Re: Запись в файл

Сообщение Forward »

Простейший вариант - кейс структура с элементом управления типа "Switch when pressed". На эту тему есть примеры в :labview:.
Вложения
wr_bin.png
wr_bin.png (7.41 КБ) 4995 просмотров
nadin
junior
junior
Сообщения: 58
Зарегистрирован: 23 мар 2009, 16:49
Версия LabVIEW: 8.2,8.6,2010
Откуда: Россия
Контактная информация:

Re: Запись в файл

Сообщение nadin »

Спасибо!
Я, не совсем правильно сформулировала задачу, мне надо, чтобы файл создавался и записывался по нажатию кнопки Запись,
и имя файла вводил оператор по завершению записи (т.е. когда Запись отжали), это вообще возможно?
Как только не пробовала не получается.
anda555
beginner
beginner
Сообщения: 40
Зарегистрирован: 17 янв 2009, 17:01
Версия LabVIEW: 8.5
Контактная информация:

Re: Запись в файл

Сообщение anda555 »

По нажатию кнопки запись ты пишешь файл с любым именем.
По отжатию кнопки файл просто переименовывается на имя , что вводит оператор.
nadin
junior
junior
Сообщения: 58
Зарегистрирован: 23 мар 2009, 16:49
Версия LabVIEW: 8.2,8.6,2010
Откуда: Россия
Контактная информация:

Re: Запись в файл

Сообщение nadin »

Спасибо.
nadin
junior
junior
Сообщения: 58
Зарегистрирован: 23 мар 2009, 16:49
Версия LabVIEW: 8.2,8.6,2010
Откуда: Россия
Контактная информация:

Re: Запись в файл

Сообщение nadin »

Что-то у меня все равно не получается с кнопкой Запись, как я сделала, получается, что если изначально кнопка отжата, спрашивает имя файла, а мне так не надо. Надо, чтобы запустили программу, захотели нажали Запись, не захотели, просто на экране будет появляться информация, без записи.
Никак не доходит, как сделать, наверняка все просто. Помогите.
Вложения
запись в файл1.vi
(18.59 КБ) 381 скачивание
Boxa
beginner
beginner
Сообщения: 48
Зарегистрирован: 10 янв 2021, 17:41
Версия LabVIEW: 2019
Благодарил (а): 13 раз
Контактная информация:

Re: Запись в файл

Сообщение Boxa »

nadin писал(а): 17 июн 2009, 17:33 Что-то у меня все равно не получается с кнопкой Запись, как я сделала, получается, что если изначально кнопка отжата, спрашивает имя файла, а мне так не надо. Надо, чтобы запустили программу, захотели нажали Запись, не захотели, просто на экране будет появляться информация, без записи.
Никак не доходит, как сделать, наверняка все просто. Помогите.
аналогичаня проблема, что даже если запись не запускалась по кнопке то создается пустой фаил и хламится папка. Вы нашли как с этим справиться?
Аватара пользователя
jane_wild
master
master
Сообщения: 466
Зарегистрирован: 30 июн 2016, 02:11
Версия LabVIEW: 2020
Благодарил (а): 84 раза
Поблагодарили: 16 раз
Контактная информация:

Re: Запись в файл

Сообщение jane_wild »

Boxa писал(а): 26 май 2023, 11:32
аналогичаня проблема, что даже если запись не запускалась по кнопке то создается пустой фаил и хламится папка. Вы нашли как с этим справиться?
Думаю что она нашла решение. 14 лет срок достаточный.
Покажите свой код, как вы это делаете, если так как делала она в предыдущем посте, то это не правильно...
Boxa
beginner
beginner
Сообщения: 48
Зарегистрирован: 10 янв 2021, 17:41
Версия LabVIEW: 2019
Благодарил (а): 13 раз
Контактная информация:

Re: Запись в файл

Сообщение Boxa »

jane_wild писал(а): 26 май 2023, 13:09
Boxa писал(а): 26 май 2023, 11:32
аналогичаня проблема, что даже если запись не запускалась по кнопке то создается пустой фаил и хламится папка. Вы нашли как с этим справиться?
Думаю что она нашла решение. 14 лет срок достаточный.
Покажите свой код, как вы это делаете, если так как делала она в предыдущем посте, то это не правильно...
как то так, при запуске формируется фаил и соответственно потом даже если не было нажата кнопка записи он сохраняется пустой. А мне нужно чтобы в любой момент выполнения я мог начать запись и остановить, осциллограф запускается произвольно, а запись в фаил по неоходимости.
Пытаюсь отдельно отработать эту функцию записи и использовать event структуру но пока все как-то мимо. Даже второй цикл не останавливается почемуто.
Вложения
1.jpg
Untitled 1.vi
(31.47 КБ) 91 скачивание
Аватара пользователя
jane_wild
master
master
Сообщения: 466
Зарегистрирован: 30 июн 2016, 02:11
Версия LabVIEW: 2020
Благодарил (а): 84 раза
Поблагодарили: 16 раз
Контактная информация:

Re: Запись в файл

Сообщение jane_wild »

Boxa писал(а): 26 май 2023, 13:20 Даже второй цикл не останавливается почемуто.
Ивент структура не отрабатывает, вот он и не останавливается, все ждет когда же вы кнопку записи нажмете....
я даже больше скажу, цикл записи запустится только после остановки первого. В итоге вы добавляете в очередь данные в первом цикле, без временных задержек и не забираете их во втором, мне вот интересно сколько времени у вас работает этот VI, до возникновения ошибки переполнения памяти?
В общем структура программы мягко говоря не очень... Ну если прямо хочется с ивент структоурой, то вот держите
Вложения
Test TDMS.vi
(21.13 КБ) 91 скачивание
Boxa
beginner
beginner
Сообщения: 48
Зарегистрирован: 10 янв 2021, 17:41
Версия LabVIEW: 2019
Благодарил (а): 13 раз
Контактная информация:

Re: Запись в файл

Сообщение Boxa »

jane_wild писал(а): 26 май 2023, 16:46 Ивент структура не отрабатывает, вот он и не останавливается, все ждет когда же вы кнопку записи нажмете....
я даже больше скажу, цикл записи запустится только после остановки первого. В итоге вы добавляете в очередь данные в первом цикле, без временных задержек и не забираете их во втором, мне вот интересно сколько времени у вас работает этот VI, до возникновения ошибки переполнения памяти?
В общем структура программы мягко говоря не очень... Ну если прямо хочется с ивент структоурой, то вот держите
Огромное спасибо, задачи с event сделать не было, была хоть как-то это реализовать. Попробую ее в основной программе позже. Единственно ваша программа один фаил перезаписывает, а не новые создает, но это копеечная переделка. Не ожидал что вы прям целиком сделаете, тут обычно советами помогают:))
jane_wild писал(а): 26 май 2023, 16:46 я даже больше скажу, цикл записи запустится только после остановки первого. В итоге вы добавляете в очередь данные в первом цикле, без временных задержек и не забираете их во втором, мне вот интересно сколько времени у вас работает этот VI, до возникновения ошибки переполнения памяти?
Это была отдельная программа для опробования и настройки алгоритма, чтобы потом перенести в основную программу, она долго не работала.
Аватара пользователя
jane_wild
master
master
Сообщения: 466
Зарегистрирован: 30 июн 2016, 02:11
Версия LabVIEW: 2020
Благодарил (а): 84 раза
Поблагодарили: 16 раз
Контактная информация:

Re: Запись в файл

Сообщение jane_wild »

Boxa писал(а): 26 май 2023, 17:31 Единственно ваша программа один фаил перезаписывает, а не новые создает, но это копеечная переделка.
Так вы же на это и жаловались, что программа кучу файлов создает. :D

Тогда можно сделать так. При нажатии кнопки запись будет создан файл по пути Documents/LOG/дата создания/время создания (если таких папок нет - то будут созданы)
Сколько раз на кнопку нажали, столько файлов и получили. Дата и время всегда разные...
Правда я не знаю как это будет работать в русской windows, у меня всё английское...
Test TDMS.png
Boxa писал(а): 26 май 2023, 17:31 Не ожидал что вы прям целиком сделаете, тут обычно советами помогают:))
Ну почему же, мне постоянно помогают, только нужно самому/самой прилагать хоть какие то усилия. А не просить у "меня нет времени сделайте это за меня"
Вложения
Test TDMS.vi
(25.24 КБ) 33 скачивания
Artem.spb

Activity Автор
professor
professor
Сообщения: 3438
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 52 раза
Поблагодарили: 176 раз
Контактная информация:

Re: Запись в файл

Сообщение Artem.spb »

jane_wild писал(а): 26 май 2023, 21:12 Правда я не знаю как это будет работать в русской windows, у меня всё английское...
Лучше билдить пути с помощью специальных функций, это сделает вашу программу более кросс-платформенной. И в целом уменьшает вероятность попутать "/" и "\"
Boxa
beginner
beginner
Сообщения: 48
Зарегистрирован: 10 янв 2021, 17:41
Версия LabVIEW: 2019
Благодарил (а): 13 раз
Контактная информация:

Re: Запись в файл

Сообщение Boxa »

jane_wild писал(а): 26 май 2023, 21:12
Boxa писал(а): 26 май 2023, 17:31 Единственно ваша программа один фаил перезаписывает, а не новые создает, но это копеечная переделка.
Так вы же на это и жаловались, что программа кучу файлов создает. :D

Тогда можно сделать так. При нажатии кнопки запись будет создан файл по пути Documents/LOG/дата создания/время создания (если таких папок нет - то будут созданы)
Сколько раз на кнопку нажали, столько файлов и получили. Дата и время всегда разные...
Правда я не знаю как это будет работать в русской windows, у меня всё английское...

Test TDMS.png
Boxa писал(а): 26 май 2023, 17:31 Не ожидал что вы прям целиком сделаете, тут обычно советами помогают:))
Ну почему же, мне постоянно помогают, только нужно самому/самой прилагать хоть какие то усилия. А не просить у "меня нет времени сделайте это за меня"
немного по другому решил это через отдельную субпрограмму чтобы потом проше использовать было.
Вложения
2.jpg
1.jpg
file name for log.vi
(16.45 КБ) 545 скачиваний
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Сохранение данных»