ความรู้แน่น ฟรีสำหรับชุมชน ArduinoAll ที่นี่เท่านั้น

ฟรีและดีที่สุด คอร์สอบรม Arduino + NodeMCU
ทำเพื่อแบ่งปัน ห้ามนำไปจำหน่าย หรือเก็บเงินค่าเรียน
  !!!


  


AllNewStep รับประกันคุณภาพทุกชิ้น วันจันทร์-ศุกร์แจ้งชำระสินค้าก่อน 14.00 จัดส่งทันทีวันนี้ค่ะ

กรุงเทพ /ภาคกลาง ได้พรุ่งนี้


*** สินค้าทุกชิ้น ถ้าสามารถทำรายการสั่งซื้อได้ แสดงว่ามีครบทุกรายการค่ะ *** 

พิมพ์ค้นหาบทความ หัวข้อกระทู้ และสินค้าในเว็บ AllNewStep ได้ที่นี่
QUOTE 

ผมต้องการแยกตัวเลขออกจากString

sea

คือผมรับขค่าStringมาจาก Firebase มาเป็น "ตัวเลข" เช่น "1" "12" "75"
ผมอยากทราบว่ามีวิธีอะไรที่สามารถดึงตัวเลขออกมาเก็บไวเป็นตัวแปลอื่น

QUOTE 
ความคิดเห็นที่ #1
เจ้าของร้าน

ทำดังนี้ครับ

1. การแปลงข้อความเป็นตัวเลข สามารถใช้ class string ในฟังก์ชั่น toInt(); แปลงเป็นตัวเลขได้

ตัวอย่างดังโคดนี้

void setup() {

  Serial.begin(9600);

  String str = "10";

  int val = str.toInt();

  val = val+30;

  Serial.println(val); // val จะได้ค่า 40 สังเกตว่า 10+30 บวกได้ถูกต้องแสดงว่าเป็นตัวเลขแล้ว

}

void loop() {

}

 

2. ที่ให้มาเป็นข้อความหลายตัว โดยมี ช่องว่างคั่น การแยกข้อความแต่ละตัวเก็บไว้ใน ตัวแปร ผมเขียนตัวอย่างให้ดังนี้ครับ

void setup() {

  Serial.begin(9600);

  String input = "123,456";

  String value1, value2;

  for (int i = 0; i < input.length(); i++) {

    if (input.substring(i, i + 1) == ",") {

      value1 = input.substring(0, i);

      value2 = input.substring(i + 1);

      break;

    }

  }

  Serial.println(value1);

  Serial.println(value2);

}

 

void loop() {

}

 

ก็อปโคดทั้ง 2 ตัวอย่างนี้ แล้วดูผลลัพธ์ก็จะได้ตัวเลขตามที่ต้องการครับ

QUOTE 
ความคิดเห็นที่ #2
Sittinun Rurensin

ผมลองส่ง 3 Data แล้วมาแยก มันไม่ได้อะครับ  ช่วยหน่อยครับ ขอบคุณล่วงหน้าครับ 

QUOTE 
ความคิดเห็นที่ #3
Kittisak Sookkho

อยากทราบเหมือนกันครับว่าถ้าแยกสามตัวต้องทำยังไงครับ ในกรณที่ผมมีข้อมูล 

13.656645,100.1546879,2

แสดงความคิดเห็นที่ 1-3 จากทั้งหมด 3 ความคิดเห็น
ขาย ARDUINO
คุณภาพ อันดับ 1

ได้รับรางวัลร้านยอดเยี่ยม
ตั้งแต่ปี 2558
ขาย Arduino
วีดีโอสอน Arduino

สอน esp8266

สอน Arduino IoT
สอน Arduino แบบเร็ว

สอน NodeMCU

อุปกรณ์ Arduino

MEMBER ZONE

พูดคุย-สอบถาม