تمام سوالات سوالات بدون پاسخ سوال بپرسید

دوستان در برنامه ای که با ++C می نویسم نیاز دارم تا داده ها را بصورت unicode روی شبکه با استفاده از socket ارسال کنم. در این برنامه از winsock 2.2 استفاده می کنم. اما همانطور که می دانید تابع send تنها برای ارسال char پیش بینی شده است. آیا راه حلی وجود دارد تا بتوانم این داده ها را بصورت unicode روی شبکه ارسال کنم.
سوال دوم من این است که encoding داده های دریافتی در طرف دریافت کننده باید چه باشد تا داده های ارسالی را درست دریافت کنم. اگر برنامه دریافت کننده با ++C نوشته نشده باشد، از چه Encodingی برای دریافت داده ها استفاده کنم؟

1 پاسخ

سلام برای این که بتوانید داده هایی را بصورت unicode روی شبکه ارسال کنید، باید ابتدا آنها را به byte تبدیل کنید و byte های آنرا همانند داده های باینری روی socket ارسال نمایید. در مورد encoding ارسال داده ها هم باید عرض کنم که اگر شما ساختمان داده ای که بصورت خاص مربوط به یک سکوی خاص است را بصورت باینری رو شبکه ارسال کنید، تنها در صورتی در client با مشکل مواجه نخواهید شد که سکوی شما در دو طرف یکسان باشد (برای نمونه هر دو طرف را خودتان با استفاده از ++C نوشته باشید) در غیر این صورت در طرف دیگر اطلاعات ارسالی به درستی دریافت نخواهند شد. پس شاید بتوان گفت که روش اصولی انجام این کار، تبدیل داده های تان به یک قالب استاندارد است (برای نمونه در مورد رشته های می توانید از utf8 استفاده نمایید) پس از تبدیل بایت های داده های تبدیل شده را روی winsock ارسال نمایید.

toggle preview



آموزش زبان برنامه نویسی C#
آموزش jquery
آموزش برنامه نویسی
آموزش طراحی وبسایت
آموزش مدیریت وبسایت
آموزش جاوا Java
آموزش پایتون Python
آموزش سی شارپ C#‎
آموزش HTML و CSS
آموزش JavaScript جاوااسکریپت
آموزش jQuery جی کوئری
آموزش ساخت ربات تلگرام
آموزش برنامه‌نویسی PHP
آموزش برنامه‌نویسی اندروید
● آموزش‌های رایگان

سوالات مرتبط

راهنمای استفاده از ویرایشگر
  • *ایتالیک*‌ یا __ایتالیک__
  • **ضخیم** یا __ضخیم__
  • آدرس:[متن](http://url.com/ "عنوان")
  • عکس?![alt متن](/path/img.jpg "عنوان")
  • لیست عددی: 1. Foo 2. Bar
  • برای رفتن به خط بعد، هر جا مایلید که خط جدید شروع شود دو کاراکتر فاصله (space) قرار دهید
  • تگ‌های ساده HTML هم پشتیبانی می‌شوند

تگها:
این سوال را دنبال کنیدتوسط ایمیل: ایمیل شما (باید معتبر باشد, هرگز به دیگران نمایش داده نمیشود):

هنگامی که شما به سیستم وارد شوید،قادر خواهید بود برای بروز رسانی ها مشترک شوید.


توسط RSS:

پاسخها

پاسخها و نظرها