mojaSymfonia FORUM https://forum.mix-soft.pl/ |
|
Import danych z pliku https://forum.mix-soft.pl/viewtopic.php?f=15&t=3630 |
Strona 1 z 1 |
Autor: | sebastianl84 [ 2012-01-12, 16:04 ] |
Tytuł: | Import danych z pliku |
Witam Zaczynam zabawę z pisaniem w ambasicu. Potrzebuje pomocy przy pobieraniu danych z pliku. Wiem jak pobrać jeden lub dwa wiersze i przypisać zmienne. Nie potrafię pobrać wybranego wiersza, np. Potrzebuje pobrać wartość z 4 wiersza od 3 znaku. Istnieje taka możliwość ? z góry dzięki za pomoc Sebastian |
Autor: | rafal [ 2012-01-12, 20:26 ] |
Tytuł: | Re: Import danych z pliku |
Pokaż co już masz zrobione. Wklej kawalek pliku. |
Autor: | sebastianl84 [ 2012-01-13, 09:33 ] |
Tytuł: | Re: Import danych z pliku |
Witam Poniżej kawałek kodu: Kod: int wczyt wczyt=open "c:\\a.txt" for input String z1, z2, z3, z4 Input # wczyt, z1, z2, z3, z4 ioRec ioX ioX.Clear() ioX.SetField("typ_dokumentu", "ZO") ioX.SetField("khkod", z1) ioX.SetField("seria", "sZMO") ioX.BeginSection("Pozycja dokumentu") ioX.SetField("CENA", z2) ioX.SetField("kod", z3) ioX.SetField("ilosc", z4) ioX.EndSection() long idDok = ioX.ImportSP() WystawDokumentHandlowy( IdDok, 1, 1) close(wczyt) Plik źródłowy będzie zawierał informacje : 1,2,3... linia - .......nieistotne informacje.......... x linia - kod-"dane do pobrania" (potrzebuje pobrać dane po "-" itd. Pozdrawiam Sebastian |
Autor: | rafal [ 2012-01-13, 11:41 ] |
Tytuł: | Re: Import danych z pliku |
Jeżeli znasz ilość znaków przed znakiem "-" i ta ilość jest stała to : Kod: string sLinia = "dane przed kreską - dane po kresce" print mid(sLinia,20,200) Jeżeli znak "-" może występować w różnych miejscach linii : Kod: string sLinia = "dane przed kreską - dane po kresce" buf = sLinia find regular "^{*}/-{*}$" print regular 2 |
Autor: | sebastianl84 [ 2012-01-13, 12:21 ] |
Tytuł: | Re: Import danych z pliku |
Dzięki za rozwiązanie. Nadal większy problem mam z tym jak wczytać np. 30 i 40 wiersz z pliku. Pozdrawiam Sebastian |
Autor: | rafal [ 2012-01-13, 12:44 ] |
Tytuł: | Re: Import danych z pliku |
czy każdy wiersz to pozycje dokumentu czy oddzielne dokumenty? Dlaczego akurat 30sty i 40sty wiesz? zawsze będą to te wiersze? Nie załączyłeś przykładowego pliku i chodzimy po omacku. |
Autor: | sebastianl84 [ 2012-01-13, 14:31 ] |
Tytuł: | Re: Import danych z pliku |
Narazie rozwiązałem problem za pomocą pętli. Plik źródłowy zawiera różne dane które muszę wyciągnąć. Np. 1. wiersz zawiera kontrahenta 5. kwotę 10. datę 15. .... Jeden plik źródłowy zawiera informacje potrzebne do stworzenia jednego dokumentu. Zawsze te same wiersze. |
Autor: | rafal [ 2012-01-13, 15:32 ] |
Tytuł: | Re: Import danych z pliku |
Dobra droga z tą pętlą. Za pomocą licznika Kod: i += 1 możesz zorientować się w której linii właśnie jesteś |
Autor: | sebastianl84 [ 2012-01-13, 16:26 ] |
Tytuł: | Re: Import danych z pliku |
Pojawiło mi się jeszcze jedno pytanko. Dobrze myślę że da się tworzyć zmienne ze zmieniającą się końcówką w pętli np. jest zmienna a1 po przejściu przez pętle powstaje zmienna a2 ??? |
Autor: | rafal [ 2012-01-13, 16:32 ] |
Tytuł: | Re: Import danych z pliku |
raczej nie można. można za to użyć tablicy. |
Autor: | konikan [ 2012-01-15, 00:56 ] |
Tytuł: | Re: Import danych z pliku |
Nie znam języka programowania w którym tak można by było zmienne dynamicznie towrzyć. Zgadzam się w 100% z rafałem, że trzeba użyć tablicy albo MapValue. |
Autor: | leonek [ 2012-01-17, 01:00 ] |
Tytuł: | Re: Import danych z pliku |
Odbiegając od głównego wątku dodam, że językiem w którym można tworzyć dynamicznie zmienne jest np. php Kod: for($x=1; $x < 10; $x++) { ${"zmienna".$x} = "wiadro"; } Wywołanie takiego kodu spowoduje wygenerowanie zmiennych $zmienna1, $zmienna2 ... itd. Uważam jednak także, że tablice są bardziej "katolickim" rozwiązaniem. |
Strona 1 z 1 | Strefa czasowa UTC+1godz. [letni] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |