我正在尝试使用Wifi将文件复制到Android设备。我无法告诉文件的创建是否有效,但我无法在任何地方找到它......
我尝试在Eclipse上使用DDMS,但Data文件夹上没有任何内容...对于我在其他主题上阅读的内容,该文件应该位于App的数据文件夹中..但是没有文件夹任何地方...
这是代码
package com.ejemplo.cliente;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.Socket;
import java.net.UnknownHostException;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
import android.widget.Toast;
public class ClienteSocket extends Activity {
Socket socket;
String IP = "192.168.1.101";
Integer Puerto = 4444;
TextView Mensaje;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Mensaje = (TextView)findViewById(R.id.Mensaje);
try {
socket = new Socket(IP,Puerto);
Mensaje.setText("Conectado");
InputStream input = socket.getInputStream();
BufferedReader inReader = new BufferedReader(new InputStreamReader(socket.getInputStream()));
BufferedWriter outReader = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream()));
String filename = inReader.readLine();
if ( !filename.equals("") ){
outReader.write("READY\n");
outReader.flush();
Mensaje.setText("Request Acepted");
FileOutputStream wr = openFileOutput(filename,MODE_WORLD_READABLE);
OutputStreamWriter osw = new OutputStreamWriter(wr);
byte[] buffer = new byte[socket.getReceiveBufferSize()];
int bytesReceived = 0;
while((bytesReceived = input.read(buffer))>0)
{
osw.write(bytesReceived);
Toast.makeText(this, "Transfering", Toast.LENGTH_SHORT).show();
}
osw.flush();
osw.close();
Mensaje.setText("File Received");
}
} catch (UnknownHostException e) {
Mensaje.setText("error 1" + e.getMessage());
} catch (IOException e) {
Mensaje.setText("error 2" + e.getMessage());
}
}
}
答案 0 :(得分:5)
如果它确实有效,则该文件将位于/data/data/your.package.name/
。除非您的手机是root用户,否则您只能在模拟器上访问该文件夹。
答案 1 :(得分:0)
如果要将其保存在 - 对于用户可访问 - 外部存储中,请使用此选项 文件f =新文件(Environment.getExternalStorageDirectory()," Folder / name.ending"); 创建文件 复制,也使用该路径。 如果您不希望图片显示在手机的图库中,请添加名为" .nomedia"的文件。到与图像相同的目录