View Full Version : انتقال فایل متنی با بلوتوث
razazian
یک شنبه 10 بهمن 1389, 12:28 عصر
سلام
از دوستان عزیز خواهش میکنم کمکم کنینhttp://forum.gsmaria.com/images/smilies/geryeh.gif
یه فایل متنی بزرگ دارم که 70000 تا رکورد داره و باید این فایل رو با بلوتوث از کامپیوتر به موبایل بفرستم تا بتونم این اطلاعات رو بریزم تویه recordstore بعد از شون استفاده کنم. اما نمیدونم چه جوری؟
برای انتقال فایل از کامپیوتر به موبایل میخوام تمام اطلاعات رو تویه یک string یکجا به DataOutPutStream بریزم بعد موبایل string رو ازDataInPutStream بگیره اما این string خیلی بزرگ میشه حالا نمیدونم چی کار کنمhttp://forum.gsmaria.com/images/smilies/q=uestion.gif
AmirHarirbafan
یک شنبه 10 بهمن 1389, 14:52 عصر
چرا یک استریم به فایل اصلی درست نمیکنی و بهش نمیدی
البته نمیدونم که شما از چه کامپوننتی برای ارسال اطلاعاتت استفاده میکنی. اما من با کامپوننت WCL کار کردم، اونجا بعد از باز کردن Obex میتونستی با استفاده از تابع Put یک استریم که به یک فایل نصبتش دادی رو به تابع بدی و اون هم برات فایل رو ارسال میکرد، البته
razazian
دوشنبه 11 بهمن 1389, 09:11 صبح
من کد رو این جوری نوشتم . آیا با این کد میشه این فایل بزرگ رو انتقال داد؟
public class RequestHandler extends ServerRequestHandler{
public int onGet(Operation op) {
try {
HeaderSet hs = op.getReceivedHeaders();
String name = (String) hs.getHeader(HeaderSet.NAME);
if (name != null) {
System.out.println("file name:" + name);
}
InputStream is=op.openInputStream();
StringBuffer buf = new StringBuffer();
int data;
while ((data = is.read()) != -1) {
buf.append((char) data);
}
System.out.println("client:" + buf.toString());
//read from file & send
DataOutputStream out=op.openDataOutputStream();
File f = new File(name);
if(f==null)
System.out.println("water.txt is not exist");
else{
FileInputStream fis=new FileInputStream(f);
BufferedInputStream bis = new BufferedInputStream(fis);
DataInputStream dis = new DataInputStream(bis);
String info="";
while (dis.available() != 0){
info+=dis.readLine()+".";
}
out.writeUTF(info);
System.out.println("info="+info);
dis.close();
bis.close();
fis.close();
System.out.println("file sent to client.");
}
op.close();
return ResponseCodes.OBEX_HTTP_OK;
} catch (IOException e) {
e.printStackTrace();
return ResponseCodes.OBEX_HTTP_UNAVAILABLE;
}
}
}
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.