2012-05-13 44 views
5

Có ai từng đi qua một thư viện ảo hóa hệ thống tập tin tốt đáp ứng các yêu cầu này không?Thư viện VFS di động C++

  • nền tảng chéo: ít nhất Win32 và Linux, tốt nhất cũng OSX
  • Hỗ trợ các giao thức:
    • SMB
    • FTP
    • SFTP
    • FS Local
  • Tóm tắt Giao diện C++ với một nhà máy khách hàng dựa trên một URL:
    • smb: // [user [: mật khẩu] @] host/share/con đường ...
    • ftp: // [user [: mật khẩu] @] host/path ...
    • sftp: // [user [: mật khẩu] @] host/path ...
    • file: // con đường ...
  • phương pháp Cung cấp cho:
    • Bảng liệt kê một thư mục, tốt nhất là trở về mục với struct thuộc tính giống như số liệu thống kê
    • Di chuyển
    • Sao chép
    • Di
    • Stat
    • Bonus: giao diện truy cập tập tin ở mức độ thấp (mở, đọc, viết, đóng, ...)

Tôi đã nhìn thấy một số thư viện tốt đáp ứng một tập hợp con của các yêu cầu này (curl cho FTP, libssh cho SFTP, để đặt tên một vài), nhưng chưa có điều nào làm được tất cả. Có một sự thôi thúc mạnh mẽ đến cho một DIY, nhưng tôi không thể tưởng tượng rằng nó không tồn tại.

+1

Bạn đang yêu cầu rất nhiều ... đặc biệt. khi nói đến công cụ đa nền tảng. –

Trả lời

3

Nó được triển khai trong C, không phải C++, nhưng tôi khá chắc chắn GIO hỗ trợ hầu hết điều đó. Đây là một phần của dự án GNOME và được sử dụng bởi hầu hết các ứng dụng GNOME như là một trừu tượng hệ thống tập tin.

+0

Cảm ơn Celada. Bạn có nghĩ rằng GIO sẽ có đầy đủ chức năng trên Windows, đặc biệt là phần gvfs? – Pat

+0

Tôi có nghi ngờ về việc liệu họ có quản lý được phần mà hệ thống tập tin ảo được gắn trong hệ thống tập tin thực hay không, nhưng tôi cho rằng ít nhất bạn cũng có thể sử dụng đầy đủ giao diện cấp cao GIO gốc (trong đó các tệp được xác định bằng các URL). Nhưng tôi không thể chắc chắn, tôi đã không sử dụng nó trong Windows. Bằng cách này hay cách khác, bất kể những người glib * có * quản lý để làm, tôi nghi ngờ bất cứ ai khác đã làm tốt hơn. – Celada

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