Tags:
Forums: 

อยากรบกวนขอ code ที่ใช้เปิดไฟล์ภาษาไทยหน่อยครับ
คือผมสร้าง folder dictionary แล้วเก็บไฟล์ภาษาไทยเอาไว้
โดยชื่อไฟล์เป็นภาษาไทย ก.txt ข.txt ค.txt

ผมจะรับ input เป็นภาษาไทย เช่น กิน จะไปเปิด ไฟล์ ก.txt แล้วหาข้อมูลคำว่า กิน
ถ้า รับ input ข้าว จะไปเปิดไฟล์ ข.txt แล้วหาข้อมูลคำว่าข้าว

ผมสร้าง code ไว้แต่เปิดได้ไฟล์ภาษาอังกฤษครับ

fname = "./dictionary/"+word[0:1]+'.txt'

f = open(fname,'r')

Get latest news from Blognone
By: bow_der_kleine
WriterAndroidUbuntu
on 14 January 2009 - 06:01 #80603
bow_der_kleine's picture

เปลี่ยน word[0:1] เป็น word.decode('utf-8')[:1] ดูครับ เพราะถ้า word เป็น unicode แต่ยังมี type เป็น string อยู่ ก็ต้องเปลี่ยนเป็น unicode ด้วย decode ก่อน ไม่งั้น ความยาวมันจะกลายเป็นสามเท่า

อย่าง 'ก'[:1] != 'ก' แต่ 'ก'[:1] = '\xe0' แล้วก็ 'ก'.decode('utf-8')[:1] = 'ก'

BioLawCom.De

By: zoozhi on 14 January 2009 - 15:20 #80690

ผมลองแก้แล้วแต่ error ครับ

filename = "/.dic/"+word.decode(‘utf-8’)[:1]+'.txt'

                               ^

SyntaxError: invalid syntax

By: willwill
ContributorAndroid
on 14 January 2009 - 19:14 #80753
willwill's picture

ใช้ editor อะไรครับนั่น?

คือ "' เนี่ยครับ มันเป็นฟันหนูแบบเขียนเรียงความไม่ได้เขียนโค๊ดครับ (สังเกตว่าจะมีตัวเปิดและตัวปิดครับ ไม่ใช่เท่ากันทั้งเปิดและปิด) ที่ผมแก้แล้วและรันได้คืออันนี้ครับ

filename = "/.dic/"+word.decode('utf-8')[:1]+'.txt'

By: zoozhi on 15 January 2009 - 14:09 #80943

ใช้ IDLE ครับ

By: sugree
FounderWriterAndroidBlackberry
on 17 January 2009 - 09:02 #81284 Reply to:80943
filename = "/.dic/"+word.decode('utf-8')[:1]+'.txt'
By: nanartong on 17 March 2009 - 14:42 #91228

ผมลองเอาโค้ดสองบรรทัดนี้ไปรันดูบา้างแต่ใช้ไม่ได้อ่ะครับ filename = "/.dic/"+word.decode('utf-8')[:1]+'.txt' f = open(filename,'r')

ทำไมมันใช้ไม่ได้อ่ะครับช่วยบอกโดยละเอียดหน่อยได้ไหมครับแบบว่kมือใหม่จริงๆขอบคุณมากครับ

By: sugree
FounderWriterAndroidBlackberry
on 18 March 2009 - 18:20 #91485 Reply to:91228

แล้ว error?

By: nanartong on 18 March 2009 - 21:42 #91502

http://dekdee.buu.ac.th/~cp481612/10.JPG มันขึ้นแบบในรูปนี้อ่ะครับ ไม่ได้ประกาศ word ยังไงเหรอครับ แล้วที่มันถูกรันได้ถูกต้องอย่างที่พี่ๆทำกันทำแบบไหนเหรอครับขอโค้ดตัวอย่างเพื่อการศึกษาด้วยครับ ขอบคุณครับ ขอโทดด้วยนะครับผมมือใหม่จริงๆ

By: kowito2
Android
on 19 March 2009 - 03:28 #91548 Reply to:91502

ขอดูโค้ดด้วย

By: nanartong on 19 March 2009 - 14:11 #91616

อันนี้อ่ะครับโค้ดที่ผมใช้
word = raw_input('Enter number:')
filename = "/.dic/"+word.decode('utf-8')[:1]+'.txt'
f = open(filename,'r').read()
f.close

ที่พี่ๆเขียนกันประมาณแบบนี้หรือป่าวคือผมอยากทำตามตัวอย่างด้านบนแต่ว่ามัน error อ่ะครับ

IOEror:[Errno 2] No such file or directory: u'/.dic/t.txt

ปล. t.txt เป็นไฟล์ที่ผมสร้างไว้ใน dic ครับ อย่าว่ากันนะครับผมมือใหม่อย่างมีประสบการการเขียนโปรแกรมเยอะๆอ่ะครับ -

By: sugree
FounderWriterAndroidBlackberry
on 20 March 2009 - 00:47 #91715 Reply to:91616

ขออภัย ผมลอกต่อๆ กันมา


word = raw_input('Enter number:')
filename = "./dic/"+word.decode('utf-8')[:1]+'.txt'
f = open(filename,'r').read()
f.close

By: mementototem
ContributorJusci's WriterAndroidWindows
on 20 March 2009 - 08:42 #91754 Reply to:91715
mementototem's picture

. ผิดที่ ความหมายเปลี่ยนเยอะเลย

My FingerSports Site


Jusci - Google Plus - Twitter