nadpisywanie pliku

Jeśli masz coś do powiedzenia w sprawie LabVIEW napisz. Tutaj są tematy, których nie można uściślić do innych działów.
Gość
Posty: 656
Rejestracja: 10 lis 2003 00:00

nadpisywanie pliku

Post autor: Gość »

Witam,
mam takie pytanie, chcialbym nadpisywac plik w konkretnym miejscu, jak mam to zrobic? wiem ze sluzy do tego bloczek seek ale jak za pomoca niego ustawic kursor np w 2 linijce? szukalem przykladow ale nie moge znalezc. moglbym oczywiscie zapisywac caly plik od nowa to latwe ale bez sensu w moim przypadku jezeli chce zmieniac tylko konkretne linijki w calym pliku.
dziekuje za odpowiedz
pozdrawiam
bogdani
Administrator
Posty: 1315
Rejestracja: 30 lip 2003 00:00
Wersja środowiska: LabVIEW 2015
Lokalizacja: Ruda Śląska
Kontakt:

Re: nadpisywanie pliku

Post autor: bogdani »

Witaj
Możesz po odczytaniu pliku przeszukać go tyle razy ile linii chcesz przeskoczyć w poszukiwaniu znaku końca linii. (funkcja String >> Match Pattern).
Następnie możesz użyć File I/O >> Advanced File Functions >> Set File Position żeby ustawić pozycję w pliku od które będzie prowadzony zapis. Potem już pozostaje tylko zapisywać File I/O >> Write Text File. Wszystko podane oczywiście dla LabVIEW 8.0.1.
bogdani
Ktoś ci pomógł na forum? Podziękuj dając pochwałę.

Obrazek Obrazek Obrazek
Awatar użytkownika
Mikrobi
Posty: 1210
Rejestracja: 08 paź 2003 00:00
Wersja środowiska: LabVIEW 2017

Re: nadpisywanie pliku

Post autor: Mikrobi »

..albo: zamienić dane odczytane z pliku (string) na tablicę korzystając z funkcji (paleta funkcji String) Spreadsheet String To Array. Jako delimeter zapnij stałą z tej samej palety End of Line Constant Otrzymasz w ten sposób jedno wymiarową tablicę, której każdy element to kolejna linijka z pliku. W ten sposób usunięcie linijki lub zastąpienie jej innym wpisem staje się operacjami z następnej palety Array odpowiednio: Delete From Array i Replace Array Subset
Potem korzystasz z funkcji Array To Spreadsheet String i możesz nadpisać to w tym samym pliku lub brutalniej: odczytać, zrobić operacje na danych z pliku, usunąć plik i stworzyć nowy o takiej samej nazwie z przetworzonymi danymi.
pozdrawiam
Mikrobi

LabVIEW Champion, CLD, CPI
ODPOWIEDZ