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



Teraz jest 29 lis 2024, o 00:03


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: 27314
Lokalizacja: Szczecin
Pomógł: 1041

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: 27314
Lokalizacja: Szczecin
Pomógł: 1041

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: 27314
Lokalizacja: Szczecin
Pomógł: 1041

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
Avatar użytkownika

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

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 ]
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 ]
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