[เล่นดนตรี] ROB สลิง: สวัสดี ฉันร็อบและให้ความหวังว่า วิธีนี้จะช่วยทำให้คุณ บนถนนเพื่อการกู้คืน ดังนั้นขอเริ่มต้น เราจะเห็นว่าทันทีที่เรา เพียงเพื่อให้แน่ใจว่าเรา โดยใช้การกู้คืนได้อย่างถูกต้อง ดังนั้นการใช้งานก็ควรจะเป็นสิ่งที่ เช่นจุดเฉือนกู้คืน ตอนนี้เรากำลังจะเปิดที่คาดว่าจะ ไฟล์ดิบจุดบัตร เรามาดูกันที่นี่ที่เรากำลังใช้ คงชื่อไฟล์ขีดดิบ ซึ่งที่นี่เรามีกัญชา กำหนดให้เป็นจุดบัตรดิบ ตกลง ดังนั้นเราจึงจำเป็นที่จะต้องตรวจสอบให้แน่ใจว่า เปิดประสบความสำเร็จเพราะถ้ามัน ไม่ได้แล้วเราควรเตือนผู้ใช้ แต่สมมติว่ามันเราตอนนี้ จะประกาศบัฟเฟอร์ขนาด JPEG ความยาวของชื่อไฟล์ ดังนั้นนี่จะเป็นกันชนที่ เรากำลังจะเข้าสู่ sprintf ดังนั้นสิ่งที่เป็นไฟล์ JPEG ระยะเวลาในชื่อ? ที่นี่เราจะเห็นว่ามันเป็น สับกำหนดให้เป็นแปด ดังนั้นทำไมแปด ดีไฟล์ที่กำหนดจะได้รับการตั้งชื่อว่า สิ่งที่ต้องการเป็นศูนย์ศูนย์ศูนย์ JPG และแล้วเราต้องเครื่องหมายศูนย์ ดังนั้นเราจึงจำเป็นบัฟเฟอร์ที่สามารถ เก็บแปดตัวอักษร ตอนนี้เรากำลังจะมีเคาน์เตอร์ที่ จะติดตาม JPEGs จำนวนที่เราพบ และในที่สุดเรากำลังจะมี ไฟล์ JPEG ซึ่งเป็นครั้งแรก null ซึ่งเป็นไปได้ในขณะนี้ เปิดไฟล์ที่เรากำลังเขียนถึง ตอนนี้เรากำลังจะมี บัฟเฟอร์เพิ่มเติม นี้ไม่ได้เป็นเช่นเดียวกับ sprintf ของเรา buffer ที่กันชนนี้เป็นหนึ่งใน ที่เรากำลังอ่านอยู่ในข้อมูล จากจุดบัตรดิบ ดังนั้นบัฟเฟอร์เป็นไปได้ของ ตัวอักษรไม่ได้ลงนามที่คุณสามารถ โดยทั่วไปเพียงแค่รักษาเราไบต์และมัน จะมีขนาดบล็อกขนาด ที่ที่เราบอกท่านว่า บล็อกขนาด 512 ดังนั้น JPEGs คุณสามารถรักษาทุกอย่าง เป็นบล็อกของ 512 ไบต์ ตอนนี้เรากำลังจะห่วง กว่าไฟล์ทั้งหมด เรากำลังจะไปฉอ่านลงในบัฟเฟอร์ของเรา ครั้งขนาดบล็อกไบต์เดียวจาก ไฟล์ดิบจุดบัตร ตอนนี้สิ่งที่ไม่อ่านกลับฉ? มันส่งกลับจำนวนของรายการ ว่ามันประสบความสำเร็จในการอ่าน ดังนั้นถ้ามันจัดการเพื่ออ่าน 512 ไบต์แล้ว เราต้องการที่จะดูว่านี้คือ JPEG หรือเขียนไปยังไฟล์ JPEG และถ้ามันไม่ได้กลับ 512 ไบต์ แล้วทั้งแฟ้มได้สิ้นสุดลงใน ซึ่งในกรณีที่เราจะแยกออกจาก y ห่วงหรือมีการจัดเรียงของข้อผิดพลาดบาง ซึ่งในกรณีที่เราจะแยกออกจาก ห่วง y แต่เราจะต้องการแจ้ง สิ่งที่ผิดพลาดไป ตกลง ดังนั้นสมมติว่าเราประสบความสำเร็จในการอ่าน ใน 512 ไบต์เราต้องการที่จะตรวจสอบครั้งแรก เพื่อให้ที่ไบต์เหล่านี้ที่เรา เพียงแค่เริ่มต้นการอ่านใน JPEG ดังนั้นถ้าเป็นส่วนหัว JPEG ของ buffer ของเรา ตอนนี้สิ่งที่เป็นส่วนหัว JPEG ทำอะไร ลองดู ที่นี่เราจะเห็นว่าฟังก์ชั่นนี้เป็น กลับวัวและวัวที่ - ดีที่นี่เรากำลังตรวจสอบเพื่อดูว่า ส่วนหัวเป็นศูนย์เท่ากับค่าคงที่นี้และ หัวหนึ่งเท่ากับค่าคงที่นี้และ ส่วนหัวของสองเท่ากับค่าคงที่นี้ ส่วนหัวของสามเท่ากับนี้หรือนี้ คงที่คงที่เหล่านี้ทั้งหมด เพียงแค่สับที่กำหนดไว้ที่นี่และมี ว่าสิ่งที่เราบอกคุณในสเป็ค JPEG ที่เริ่มต้นด้วย และฟังก์ชั่นนี้เป็นเพียงการไป กลับจริงถ้าบัฟเฟอร์นี้แสดงให้เห็นถึง จุดเริ่มต้นของ JPEG ใหม่ และเท็จอย่างอื่น ตกลง ดังนั้นถ้านี้จะเป็นตัวแทนของ JPEG ใหม่ แล้วครั้งแรกที่เราต้องการที่จะตรวจสอบเพื่อดูว่า ไฟล์ JPEG ไม่เท่ากับโมฆะ ซึ่งในกรณีที่เราปิดมัน และเพื่อให้เราจะต้องตรวจสอบว่าทำไม เพื่อดูว่ามันไม่เป็นโมฆะ? ดี JPEG แรกที่เรา หาเราจะไม่ได้อยู่แล้ว ไฟล์ JPEG เปิด ดังนั้นถ้าเราพยายามที่จะปิดที่แล้ว เราไม่ได้ทำสิ่งที่ถูกต้องทีเดียว แต่ทุก JPEG ที่ตามมาว่า เราเปิดเราต้องการที่จะปิด ไฟล์ก่อนหน้า ดังนั้นตอนนี้เรากำลังจะใช้ sprintf ในขณะที่เรา กล่าวว่าก่อนที่เรากำลังใช้ ชื่อไฟล์ JPEG บัฟเฟอร์ และเรากำลังจะใช้ไฟล์ JPEG ชื่อรูปแบบที่เป็นรูปแบบของเรา และเป็นสิ่งที่ที่ ที่นี่เราจะเห็นว่ามันเป็นศูนย์เปอร์เซ็นต์ 3D.JPEG ที่ศูนย์สามเพียง กล่าวว่าเราจะใช้สามจำนวนเต็ม กับเบาะนี้ด้วยศูนย์ ดังนั้นนี่คือวิธีการที่เราจะได้รับศูนย์ศูนย์ one.JPEG และศูนย์ 10.JPEG และอื่น ๆ เรากำลังจะใช้ sprintf และตัวเลขที่เราใส่ เป็นสตริงเป็น JPEGs ชา กู้คืนซึ่ง แต่เดิมเป็นศูนย์ ดังนั้นไฟล์แรกจะเปิด ที่จะเป็นศูนย์ศูนย์ศูนย์จุด JPEG แล้วเรากำลังเพิ่มขึ้นเพื่อ ไฟล์ต่อไปเราจะเปิดศูนย์ศูนย์ จุดหนึ่ง JPEG และเราจะเพิ่มขึ้นของมัน อีกครั้งจึงจะเป็นศูนย์สองศูนย์จุด JPEG และอื่น ๆ ขวาทั้งหมด ดังนั้นตอนนี้ภายในของไฟล์ JPEG ชื่อเรามีชื่อของ ไฟล์ที่เราต้องการ เราสามารถฉเปิดแฟ้มสำหรับการเขียนที่ ตกลง และอีกครั้งที่เราต้องตรวจสอบเพื่อให้ ให้แน่ใจว่าไฟล์ที่ประสบความสำเร็จ เปิดให้บริการตั้งแต่ถ้ามันไม่ได้แล้ว มีข้อผิดพลาดบางอย่าง ดังนั้นตอนนี้เราเคยผ่านมา นี้เป็นส่วนหนึ่งที่ JPEG และที่นี่เราจะเห็นเรากำลังจะ ที่จะเขียนถึง JPEG แต่ครั้งแรกที่เรามีการตรวจสอบที่ว่านี้ ถ้าไฟล์ JPEG จะไม่เป็นโมฆะเท่ากับ ทำไมเราต้องหรือไม่ ดีไฟล์ JPEG เท่ากับ null เมื่อเรา ในปัจจุบันมีการเปิด JPEG ถ้าจุดเริ่มต้นบัตรดิบ กับพวงของไบต์ที่ ไม่ได้เป็นตัวแทน JPEG? จากนั้นเราจะต้องการที่จะ ข้ามไบต์ที่ ถ้าเราไม่ได้มีการตรวจสอบนี้แล้วเรา จะเขียนไปยังไม่ได้เปิด ยื่น 512 ไบต์แรกของ บัตรที่ไม่ดี ตกลง ดังนั้นสมมติว่าเรามีไฟล์ที่เปิดแล้ว ที่เรากำลังจะเขียนไฟล์ที่ 512 ไบต์ที่เรามีในบัฟเฟอร์ของเรา และเรากำลังตรวจสอบอีกครั้งเพื่อให้ ให้แน่ใจว่าประสบความสำเร็จใน 512 ไบต์ ถูกเขียนเพราะถ้าพวกเขาไม่ได้ เขียนที่ประสบความสำเร็จแล้วสิ่งที่ ผิดพลาดไป เราจะปิดไฟล์ของเราพิมพ์ว่า สิ่งที่ผิดพลาดและการกลับมา สมมติว่าทุกอย่างไปได้อย่างถูกต้องแล้ว เราจะให้วนลูปปิด แฟ้มเก่าเปิดไฟล์ใหม่ที่เขียน ข้อมูลไปยังแฟ้มใหม่และอื่น ๆ จนกระทั่งในที่สุดฉนี้อ่าน กลับเป็นศูนย์ซึ่งหมายถึง ว่าไฟล์จะทำ ดังนั้นขณะนี้ที่อ่านบัตรมีมากกว่าเรา เห็นว่าเรากำลังจะปิดฉ ไฟล์สุดท้ายที่เราได้เปิด แต่ เรากำลังตรวจสอบว่าไฟล์ JPEG ไม่ว่างไม่เท่ากัน ดีเอทำให้รู้สึกใกล้ชิดเพราะเป็น เรากำลังเปิดไฟล์เรากำลังปิด ไฟล์ก่อนหน้า แต่สุดท้ายมาก ไฟล์ที่เราเปิดไม่ได้รับการปิด ดังนั้นนั่นคือสิ่งที่จะทำนี้ แต่ทำไมเราจำเป็นต้องตรวจสอบการ null? ดีสิ่งที่ถ้าจุดบัตรดิบไม่ได้ มีเพียงครั้งเดียว JPEG ภายในของมันได้หรือไม่ ในกรณีที่เราจะมี ไม่เคยเปิดไฟล์ และถ้าเราไม่เคยเปิดไฟล์ที่เราควรจะ ไม่พยายามที่จะปิดแฟ้มที่ ดังนั้นนั่นคือสิ่งที่ตรวจสอบนี้จะทำ ตอนนี้ที่นี่ที่ผมกล่าวว่าก่อนที่เราจะทำได้ ได้แตกออก y ห่วงว่าถ้าอย่างใดอย่างหนึ่ง บัตรได้สิ้นสุดลงหรือถ้ามี ข้อผิดพลาดบางอ่านจากการ์ด ดังนั้นนี่คือการตรวจสอบเพื่อดูว่ามี ข้อผิดพลาดในการอ่านจากการ์ดใน ซึ่งในกรณีที่เราจะบอกว่ามี คือการอ่านข้อผิดพลาด เราไม่ต้องการให้ผู้ใช้ที่จะคิด ทุกอย่างก็ประสบความสำเร็จ และเราจะกลับมาอย่างใดอย่างหนึ่งสำหรับข้อผิดพลาด สุดท้ายเราจะฉปิดไฟล์ดิบของเรา บัตรของเราจุดดิบเพื่อบ่งชี้ว่า ทุกอย่างเป็นไปด้วยดีและการกลับมา ศูนย์และที่มัน ชื่อของฉันคือร็อบและนี่คือการกู้คืน [เล่นดนตรี]