PDA

View Full Version : Open file For Binary As #1



mah.yar
شنبه 24 فروردین 1387, 23:08 عصر
دستورات زیر برای ارسال فایل با سوکت استفاده میشه. مشکلم اینه که من فقط از دستورات زیر استفاده میکنم ولی مفهومشو نمیدونم
مثلا دستور Open file For Binary As #1 چیکار میکنه؟
در مورد متغیر(ثابت) chunk و دستور data = Input(chunk, #1 توضیح بدید.
با تشکر

Private Const chunk = 8000
Dim data As String

Open file For Binary As #1

Do While Not EOF(1)
data = Input(chunk, #1)
Winsock1.SendData data
DoEvents
Loop

Close #1

meysam_meysam74
یک شنبه 25 فروردین 1387, 00:40 صبح
خوب سلام.
Open "c:\1.txt" For Binary As #1
خوب یه فایلو باز میکنه تویه حالات باینری و عدد شناسش هم 1 هست #1 = 1
بعد هم تویه یه حلقه تا موقه ای که فایل تموم بشه 8000 هزار بایت از فایلو میخونه و میفرسته
ای او اف تا وقتی که دستور input به اخر فایل نرسه مقدار فلس پس میده و با نات بغلش تا موقی که مقدار فلس پس بده ما تویه حلقه هستیم دستور انپوت هم با همون شناسه یک فیلی رو که باز کردیم میخونه و به اندازه این متغیر chunk.
دستور ای او اف وقتی که به اخر فایل برسیم مقدار ترو پس میده

drwatson
یک شنبه 25 فروردین 1387, 03:07 صبح
این دستور بطور ساده بایتهاییی رو از فایلی میخونه و از طریق winsock ارسالشون میکنه
چون فایل به حالت باینری باز شده ثابت چانک مقدار داده خوانده شده رو تعیین میکنه

mah.yar
یک شنبه 25 فروردین 1387, 09:07 صبح
با این تفاسیر اگه از 2# استفاده کنیم تو قسمت EOF هم باید بنویسیم eof(2 درسته؟
آیا راه دیگه ای هم هست که بشه یه فایل رو به صورت 0 و 1 تبدیل کرد و توی یه textbox نشون داد؟
با تشکر

meysam_meysam74
یک شنبه 25 فروردین 1387, 14:26 عصر
با این تفاسیر اگه از 2# استفاده کنیم تو قسمت EOF هم باید بنویسیم eof(2 درسته؟
بکه کاملا درسته


یا راه دیگه ای هم هست که بشه یه فایل رو به صورت 0 و 1 تبدیل کرد و توی یه textbox نشون داد؟
نمیدونم اطلاعات در یه فایل به صورت کد های خاص هستن که در کل به اونا میگن رشته
0 یا 1 مربوط میشه به متغیر متغیر هم تویه رم هست نه فایل!