Tách dữ liệu từ chuỗi trong App Inventor

I. Giới thiệu

Hôm nay, mình sẽ hướng dẫn các bạn tách text, hay ký tự trong một chuỗi trong App Inventor. Giả sử điện thoại nhận được giá trị gửi về từ Arduno với 3 thông số: Nhiệt độ, độ ẩm, khí gas. Vậy làm thế nào để tách 3 thứ đó ra khỏi chuỗi nhận được???

II. Cách làm

App Inventor là một công cụ hữu ích để lập trình ứng dụng đơn giản trên điện thoại Android rất phù hợp với các ứng dụng tương tác với Arduino. Bằng cách sử dụng chỉ bằng phương pháp kéo thả các đối tượng và lập trình các đối tượng cũng chỉ bằng kéo thả các khối Code. Vì vậy nó khá đơn giản....Để tách các text, dữ liệu trong một chuỗi cho trước các bạn dùng khối sau!!!

Khối này sẽ trả về text, dữ liệu...đã tách được từ một chuỗi nào đó...Cách dùng như sau: Ở dòng đầu segment text. các bạn kéo thả chuỗi. Ở Start là vị trí ký tự đầu tiên của text muốn tách ra khỏi chuỗi. Length là vị trí kết thúc của ký tự trong text mình muốn tách, Tức là sau khi sử dụng, các bạn sẽ nhận được một text kéo dài từ ký tự Start đến Length...VD: bạn có chuỗi " Arduino " bạn muốn tách text "no" trong chuỗi rồi gán vô Textbox1...bạn phải làm như sau: vì ký tự "n" nằm ở vị trí thứ 6 trong chuỗi "Arduino" và "o" ở vị trí thứ 7 nên khối code có dạng:

Nhưng khi muốn tách 2 dữ liệu liên tục và độ dài nhảy lung tung bị thay đổi không thể xác định thì mọi việc không đơn giản như v!!! Ví dụ...dữ liệu gửi về có dạng: Nhiệt độ, Độ ẩm...Lúc này bạn phải làm như sau. VD: Chuỗi gửi về có dạng: " Nhiệt độ, độ ẩm " . Để tách giá trị Nhiệt độ bạn sẽ tách Text Start từ ký tự 1, đến ký tự ngăn cách "," . Để làm được như vậy....bạn cần phải biết được ký tự ngăn cách đó nằm ở vị trí thứ bao nhiêu trong dãy? bằng lệnh:

Lệnh này sẽ trả về giá trị...vị trí của ký tự piece ( Ở đây là dấu , nằm ở đâu trong chuỗi Textbox1.Text  )...Giả sử trong Textbox1 có chuỗi " Nhiệt độ, độ ẩm " Vây để tách Nhiệt độ ra khỏi chuỗi và hiển thị lên Textbox2 thì :

Sau khi tìm được vị trí của ký tự ngăn cách..Ta sẽ trừ đi 1 để bỏ đi kỹ tự ngăn cách ," ...Chỉ lấy mỗi giá trị Nhiệt độ để hiển thị lên Textbox2...Để tách các giá trị tiếp theo các bạn cũng làm tương tự

II

III. Lời kết

Như vậy là các bạn đã có thể tách text trong một chuỗi cho trước với App Inventor rồi đấy!!! Với việc tách chuỗi...các bạn có thể dùng if....then...để làm việc vs giá trị độ ẩm...VD: Nếu Textbox2 > 40 thỳ thông báo trời nóng!!! Chúc các bạn thành công!!!!

 

lên
19 thành viên đã đánh giá bài viết này hữu ích.
Chuyên mục: 
Các dự án được truyền cảm hứng

Bộ điều khiển PID - ứng dụng phần 2 - xe dò line dùng thuật toán PID

Tiép nối bài viết về xe dò line cảm ơn Đỗ Hữu Toàn đã viết hộ mình phần 4. hôm nay mình sẽ làm cho chiếc xe dò line đi mượt và có hồn hơn 

lên
34 thành viên đã đánh giá bài viết này hữu ích.
Các bài viết cùng tác giả

Điều khiển động cơ bước bằng mạch cầu H

Hôm nay, mình sẽ hướng dẫn các bạn điều khiển động cơ bước cực kỳ đơn giản với mạch cầu H thông thường, sử dụng thư viện chuẩn của Arduino. Thay vì sử dụng những Driver điều khiển động cơ bước như những bài trước!!! 

lên
53 thành viên đã đánh giá bài viết này hữu ích.

Điều khiển thiết bị bằng tin nhắn dùng SIM900A với tập lệnh AT

Module SIM900a là một giải pháp toàn diện cho việc điều khiển và giám sát thiết bị từ xa. Đại khái là module SIM900A được coi như 1 em nokia 1280 với chức năng nghe gọi, nhắn tin, GPRS,...Sau một thời gian dài gác phím, hôm nay, mình sẽ chia sẻ cách dùng module SIM900a đọc cú pháp tin nhắn gửi đến và điều khiển thiết bị sử dụng tập lệnh AT nhé laugh

lên
14 thành viên đã đánh giá bài viết này hữu ích.