Java Delphi XE5-Android-在服务器窗口中保存文件(共享文件夹)
早上好 我通过Delphi XE5在Android上开发了一个应用程序,它试图将文本文件保存在服务器windows上的共享文件夹中,但我收到消息I/O error 30。我在分配文件中尝试了几种方法,如代码中所述。你能帮忙吗Java Delphi XE5-Android-在服务器窗口中保存文件(共享文件夹),java,android,delphi,delphi-xe5,Java,Android,Delphi,Delphi Xe5,早上好 我通过Delphi XE5在Android上开发了一个应用程序,它试图将文本文件保存在服务器windows上的共享文件夹中,但我收到消息I/O error 30。我在分配文件中尝试了几种方法,如代码中所述。你能帮忙吗 function gravar_registro():integer; var NomeArqTxt: TextFile; begin try begin // AssignFile(NomeArqTxt, '/storage/sdca
function gravar_registro():integer;
var NomeArqTxt: TextFile;
begin
try
begin
// AssignFile(NomeArqTxt, '/storage/sdcard1/FolderTEST/xxx.txt'); // Test1 OK = This is possible = OK = SDCARD
// AssignFile(NomeArqTxt, '/sdcard/FolderTEST/gerados/xxx.txt'); // Test2 OK = This is possible = OK = memória interna;
// AssignFile(NomeArqTxt, '\\192.168.1.152\FolderSHARED\xxx.txt'); // Test3 = ERROR = I've done testing, but I / O error 30
// AssignFile(NomeArqTxt, 'smb://192.168.1.152/FolderSHARED/xxx.txt'); // Test4 = ERROR = I've done testing, but I / O error 30
// AssignFile(NomeArqTxt, '192.168.1.152\FolderSHARED\xxx.txt'); // Test5 = ERROR = I've done testing, but I / O error 30
//. Observation: a) I've done testing with FolderSHARED folder and it has access to read / write
// b) The IP 192.168.1.152 is valid and active a personal computer on the internal network
{$I-}
Reset(NomeArqTxt);
{$I+}
if (IOResult <> 0) then
ReWrite(NomeArqTxt)
else
begin
CloseFile(NomeArqTxt);
Append(NomeArqTxt);
end;
Writeln(NomeArqTxt, 'TEST TEST TEST');
CloseFile(NomeArqTxt);
showmessage('File Saved...');
end
except
On Erro: Exception Do
begin
showmessage(Erro.Message);
end;
end;
end;
使用TStringList对象,然后使用它的TStringList.SaveToFile函数。如果不支持服务器端使用的网络协议,这是不可能的。对于Windows,有一个支持SMB协议的Android库。有关Stackoverflow的一些问题包括解释其使用和服务器身份验证的源代码,例如: 有关介绍,请参见