Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki

KURS HOME ASSISTANT

Chcesz zautomatyzować swój dom bez skomplikowanego kodowania?
Zastanawiasz się nad wyborem sprzętu, oprogramowania i aplikacji?
Od czego zacząć przygodę z HA w 2025? Co będzie najlepsze na start?

Nasz kurs Home Assistant nauczy Cię krok po kroku, jak łatwo zautomatyzować swój dom i oszczędzić na rachunkach za prąd i ogrzewanie. Bez chmur, bez zbędnych abonamentów. Twoja przygoda z Home Assistant zaczyna się tutaj!

↓↓↓

    Szanujemy Twoją prywatność. Możesz wypisać się w dowolnym momencie.




    Teraz jest 8 kwi 2025, o 22:56


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 18 ] 
    Autor Wiadomość
    PostNapisane: 20 sty 2015, o 16:43 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 13 cze 2013
    Posty: 39
    Pomógł: 2

    Witam

    Mam następujące pytanie:
    Po skomunikowaniu się z urządzeniem po porcie szeregowym za pomoca koment AT dostaje zmienna typu string. Jak można "wyłowić" pożyteczne informacje z tego ciągu? Mam takie coś:
    Kod:
    +CWLAP:(0,"BTWifi-X",-71,"22:03:d8:62:b1:5e",1)+CWLAP:(0,"BTWifi-with-FON",-71,"02:03:d8:62:b1:5e",1)
    itd.

    Chciałbym to co w nawiasie powrzucać do 5 zmiennych (lix ,nazwa, sygnał, mac i secure) ale nie wiem jak zrobić to najprościej?
    Czy dobrym pomysłem jest konwersja na char i pętla np. for do wyłuskania potrzebnych danych? Jak tak to jak zainicjalizować start i stop?

    _________________
    :)



    Ostatnio edytowano 21 sty 2015, o 19:58 przez elektor18, łącznie edytowano 1 raz

    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 20 sty 2015, o 16:58 
    Offline
    Moderator
    Avatar użytkownika

    Dołączył(a): 03 paź 2011
    Posty: 27369
    Lokalizacja: Szczecin
    Pomógł: 1043

    widzę w podpisie, że masz zarówno BB ale też GB .... no to panie kochany .... powiedz mi - zaglądałeś do GB do rozdziału o komunikacji RS232 ? toż tam masz pokazane jak na tacy - jak sobie parsować stringi .... i to KROK po KROKU a ty tu zadajesz pytania o jakiejś "tajemniczej konwersji na char" :(

    mówię ci - zajrzyj i przeczytaj dobrze ten rozdział o RS232 z GB (pomiń sobie z niego tylko te fragmenty gdzie mowa o obsłudze komend AT z poziomu procka)

    _________________
    zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 20 sty 2015, o 18:13 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 07 lut 2013
    Posty: 600
    Pomógł: 47

    Musisz skorzystać na przykład z metody String.Split i wyłuskać interesujące cię dane.

    http://msdn.microsoft.com/pl-pl/library/ms228388.aspx


    Autor postu otrzymał pochwałę

    _________________
    https://www.instagram.com/myfirstquadcopter/



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 21 sty 2015, o 14:07 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 13 cze 2013
    Posty: 39
    Pomógł: 2

    Tak mam GreenBook ale nie przy sobie :( Ze soba mam aktualnie tylko BlueBook.
    Co do metody split to tylko usuwa mi dany znak a ja chce aby np. kopiowało mi znaki z pomiędzy cudzysłowów.
    Ale mimo wszystko dzięki za odpowiedź.

    _________________
    :)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 21 sty 2015, o 14:28 
    Offline
    Moderator
    Avatar użytkownika

    Dołączył(a): 03 paź 2011
    Posty: 27369
    Lokalizacja: Szczecin
    Pomógł: 1043

    poszukaj info na temat funkcji do obsługi "tokenów" w stringu czyli: strtok()

    _________________
    zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 21 sty 2015, o 16:59 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 13 maja 2012
    Posty: 174
    Lokalizacja: Gliwice
    Pomógł: 19

    Mirek, ale kolega pyta chyba o c# :)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 21 sty 2015, o 17:04 
    Offline
    Moderator
    Avatar użytkownika

    Dołączył(a): 03 paź 2011
    Posty: 27369
    Lokalizacja: Szczecin
    Pomógł: 1043

    sz4t4n napisał(a):
    Mirek, ale kolega pyta chyba o c# :)


    no tak - bardzo przepraszam - zajrzałem do nieprzeczytanego przeze mnie wątku - a kompletnie nie rzuciłem okiem na dział

    sorki za zamieszanie - postaram się poprawić na przyszłość , sorki

    _________________
    zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 21 sty 2015, o 17:57 
    Offline
    Użytkownik

    Dołączył(a): 04 paź 2011
    Posty: 8615
    Pomógł: 338

    Tym razem przenoszę, następnym razem post zostanie usunięty jeśli pojawi się w niewłaściwym dziale ....


    proszę tez poprawić temat zgodnie z zasadami tego działu :
    topic5811.html

    _________________
    Zbuduj swój system [url=https://helion.pl/ksiazki/w-labiryncie-iot-budowanie-urzadzen-z-wykorzystaniem-ukladow-esp8266-i-esp32-andrzej-gromczynski,wlablo.htm#format/d]IOT[/url]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 21 sty 2015, o 20:02 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 13 cze 2013
    Posty: 39
    Pomógł: 2

    Już poprawione, a byłem przekonany że zaznaczyłem że programuje (początki) w visual studio C#...No tak czy siak nie wiem jak to ugryźć :/

    _________________
    :)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 21 sty 2015, o 21:10 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 07 lut 2013
    Posty: 600
    Pomógł: 47

    Cytuj:
    Co do metody split to tylko usuwa mi dany znak a ja chce aby np. kopiowało mi znaki z pomiędzy cudzysłowów.
    Ale mimo wszystko dzięki za odpowiedź.


    może spróbuj w taki sposób
    Składnia: [ Pobierz ] [ Ukryj ]
    język csharp
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    w moim przypadku były wydobywane kolejne godziny oddzielone średnikiem.

    _________________
    https://www.instagram.com/myfirstquadcopter/



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 21 sty 2015, o 21:33 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 28 maja 2012
    Posty: 471
    Lokalizacja: ZGY/ZS
    Pomógł: 30

    W poniższym linku znajdziesz wszystko to co Ci potrzebne
    LINK
    W ogóle polecam ten blog, informacje są przedstawione w sposób mega przyswajalny dla startujących.

    Dodam, że potrzebujesz zapoznać się bliżej z metodami takimi jak
    - indexOf
    - substring
    - repleace
    - remove
    - split

    _________________
    eDiyCraft.blogspot.com



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 21 sty 2015, o 21:33 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 07 lut 2013
    Posty: 600
    Pomógł: 47

    w twoim przypadku mogło by to wyglądać np tak:

    Składnia: [ Pobierz ] [ Ukryj ]
    język csharp
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    C# dopiero zaczynam się uczyć tak że na pewno można to prościej ugryźć.

    _________________
    https://www.instagram.com/myfirstquadcopter/



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 sty 2015, o 07:55 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 12 maja 2013
    Posty: 568
    Zbananowany użytkownik

    Pomógł: 31

    Ja bym użył regexp.

    _________________
    Und schreien

    Spring
    Erlöse mich
    Spring
    ...



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 sty 2015, o 13:02 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 07 lut 2013
    Posty: 600
    Pomógł: 47

    Witaj, jeszcze raz siadłem na chwile do visual-a i nasmarowałem taki kawałek kodu.
    Założenie jest takie że dostajesz taką samą ramkę jeżeli nie to trzeba by sprawdzać np. czy string zawiera nawiasy i odpowiednią liczbę separatorów żeby głupot ci nie powrzucał do zmiennych.

    Składnia: [ Pobierz ] [ Ukryj ]
    język csharp
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    _________________
    https://www.instagram.com/myfirstquadcopter/



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 sty 2015, o 13:54 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 12 maja 2014
    Posty: 1089
    Pomógł: 34

    Hej ,

    Tak jak pisalem wczesniej a magicznie moj post zniknal :O uzylem bym wartosci RegEx. Tutaj dokladnie mozesz zajrzec jakby to wygladalo i dlaczego dziala w zamierzony sposob http://tinyurl.com/osndp2j

    Natomiast w C# mialoby to nastepujacy sens w kodzie zrodlowym :

    Składnia: [ Pobierz ] [ Ukryj ] [ Zaznacz wszystko ]
    język csharp
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    A na ekranie dziala to w nastepujacy sposob :D

    Obrazek


    Autor postu otrzymał pochwałę

    _________________
    sig off ;(



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 31 sty 2015, o 00:50 
    Offline
    Użytkownik

    Dołączył(a): 08 maja 2014
    Posty: 61
    Pomógł: 1

    Możesz to również zrobić bardziej łopatologicznie, powyższe przykłady kolegów były jak najbardziej poprawne.
    Jeżeli ich nie rozumiesz, spróbuj przeanalizować to:

    @edit: Chciałem dodać, iż nie jest to gotowe rozwiązanie twojego problemu, można jednak bardzo szybko stworzyć coś swojego
    nawet nie zastanawiając się czy czy są już jakieś gotowe biblioteki. Myślę że jeśli wytężysz zwoje mózgowe, to rozwiązanie wpadnie Ci do głowy
    zanim się obrócisz :D Powodzenia!

    Składnia: [ Pobierz ] [ Ukryj ] [ Zaznacz wszystko ]
    język csharp
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    Obrazek

    PS. Pochwal się potem jak pokonałeś ten problem ^^


    Autor postu otrzymał pochwałę


    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 2 lut 2015, o 14:45 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 13 cze 2013
    Posty: 39
    Pomógł: 2

    Nie odpisywałem długo bo musiałem wszystko sobie po układa w głowie :) Udało mi się wszystko ładnie uruchomić. Wyłowiłem potrzebne dane za pomocą metody .split, użyłem jej nawet dwukrotnie, do wyciągnięcia nazwy sieci, a potem żeby pozbyc się przecinków przy sile sygnału. Wszystko póki co działa. Mam natomiast pytanie jaka jest różnica między takimi deklaracjami:
    Składnia: [ Pobierz ] [ Ukryj ]
    język csharp
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
    a
    Składnia: [ Pobierz ] [ Ukryj ]
    język csharp
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
    i przy stringach zdaje się tak samo może być?

    _________________
    :)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 11 lut 2015, o 15:53 
    Offline
    Użytkownik

    Dołączył(a): 08 maja 2014
    Posty: 61
    Pomógł: 1

    elektor18 napisał(a):
    Nie odpisywałem długo bo musiałem wszystko sobie po układa w głowie :) Udało mi się wszystko ładnie uruchomić. Wyłowiłem potrzebne dane za pomocą metody .split, użyłem jej nawet dwukrotnie, do wyciągnięcia nazwy sieci, a potem żeby pozbyc się przecinków przy sile sygnału. Wszystko póki co działa. Mam natomiast pytanie jaka jest różnica między takimi deklaracjami:
    Składnia: [ Pobierz ] [ Ukryj ]
    język csharp
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
    a
    Składnia: [ Pobierz ] [ Ukryj ]
    język csharp
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
    i przy stringach zdaje się tak samo może być?


    Różnica jest taka, że w przypadku pierwszym deklarujesz zmienną typu char, czyli zmienną przechowującą pojedynczy znak.

    W drugim przypadku deklarujesz tablicę zmiennych typu char. Możesz do tablicy zapisać dowolną liczbę pojedynczych znaków a potem wydobyć który chcesz po indeksie tej tablicy mniej więcej w ten sposób:

    Składnia: [ Pobierz ] [ Ukryj ]
    język csharp
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    W tablicy indeks zawsze zaczyna się od zera. Gdybyś chciał wiedzieć, to string też jest taką tablicą zmiennych char. Dokładnie taki sam efekt jak wyżej, uzyskasz robiąc coś takiego:

    Składnia: [ Pobierz ] [ Ukryj ]
    język csharp
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



    PS. Możesz zadeklarować tablicę dowolnych zmiennych, nie tylko char i string.

    Składnia: [ Pobierz ] [ Ukryj ]
    język csharp
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    Poczytaj sobie o tablicach w C#, bo to bardzo podstawowa sprawa ^^

    Pozdrawiam, Maciek.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    Wyświetl posty nie starsze niż:  Sortuj wg  
    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 18 ] 

    Strefa czasowa: UTC + 1


    Kto przegląda forum

    Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 1 gość


    Nie możesz rozpoczynać nowych wątków
    Nie możesz odpowiadać w wątkach
    Nie możesz edytować swoich postów
    Nie możesz usuwać swoich postów
    Nie możesz dodawać załączników

    Szukaj:
    Skocz do:  
    Sitemap
    Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
    phpBB SEO