我想将TArray<string>
(第三个SelectDirectory(out Directories
参数)函数的第二个参数)转换为字符串,以便将所选路径写入编辑框。
但我不允许用户进行多项选择。因此,只能选择一个目录。
我该怎么办?
答案 0 :(得分:5)
虽然你只提到了一个单元素数组的特殊情况,但是将TArray<string>
转换为单个字符串的一般方法是将所有数组元素用给定字符串分隔,这是使用string.Join
:
const
sep = ',';
var
arr: TArray<string>;
S: string;
begin
S := string.Join(sep, arr);
end;
答案 1 :(得分:2)
如果SelectDirectory()
返回True,则保证输出数组中至少 1个元素。由于您未启用多个选择,因此保证阵列中只包含 1个元素。所以只需按索引访问该元素:
var
dirs: TArray<string>;
if SelectDirectory('', dirs) then
Edit1.Text := dirs[0]; // <--