2009-12-02 33 views
9

Qt có bất kỳ chức năng độc lập nền tảng nào để chấp nhận các đường dẫn như "~/myfile" không?Qt: Mở rộng ~ tới thư mục chính

Tôi biết về wordexp, nhưng nó sẽ tốt đẹp với trình bao bọc nền tảng độc lập.

Edit:

Cảm ơn tất cả các bạn cho câu trả lời. "~/myfile" chỉ là một ví dụ. Những gì tôi đang tìm kiếm là chức năng xử lý các đường dẫn tập tin như bạn có thể viết trên dòng lệnh. Vì vậy, trên Linux, nó phải chấp nhận "~/myfile", "~ otheruser/hisfile", "$ VAR/file" vv Trên Windows, nó phải chấp nhận "% HOMEDIR% \ myfile", v.v.

Trả lời

10

Có thể bạn có thể chỉ cần thay thế dấu ngã bằng kết quả của QDir::homePath()? Tham chiếu here.

+4

Nhưng _only_ nếu '~' là lúc đầu. –

+1

Bạn nên đảm bảo rằng nó chỉ được thực hiện khi ~ ở đầu đường dẫn và sau đó là dấu tách đường. Ngoài ra còn có vấn đề của đường dẫn như "~ foo/myfile" mà nên mở rộng đến myfile dưới nhà của foo. Bạn không chắc chắn sẽ dễ dàng như thế nào để xử lý bên ngoài môi trường * nix nơi nó không quan trọng để truy vấn thư mục chính của người dùng khác. – jamessan

Các vấn đề liên quan