njin
Engine 2D gọn nhẹ để tự tay làm game theo ý mình. Vibe coding cũng ổn luôn
Loading...
Searching...
No Matches
File và lưu game

Đọc, ghi file và thư mục lưu game của người dùng. Tiếp...

Các hàm

bool njin::file_exists (const char *path)
 File có tồn tại không.
bool njin::file_read (const char *path, std::string &out)
 Đọc toàn bộ một file.
bool njin::file_write (const char *path, std::string_view data)
 Ghi toàn bộ một file, tạo thư mục cha nếu chưa có.
std::string njin::save_path (const context &ctx, const char *file_name)
 Đường dẫn đầy đủ của một file lưu game, trong thư mục riêng của người dùng.

Mô tả chi tiết

Đọc, ghi file và thư mục lưu game của người dùng.

Thông tin về hàm

◆ file_exists()

bool njin::file_exists ( const char * path)

File có tồn tại không.

Các tham số
pathĐường dẫn.
Giá trị trả về
true nếu là một file tồn tại (không phải thư mục).

◆ file_read()

bool njin::file_read ( const char * path,
std::string & out )

Đọc toàn bộ một file.

Các tham số
pathĐường dẫn.
outNhận nội dung file. Không đổi nếu đọc thất bại.
Giá trị trả về
true nếu đọc được.

◆ file_write()

bool njin::file_write ( const char * path,
std::string_view data )

Ghi toàn bộ một file, tạo thư mục cha nếu chưa có.

Ghi vào một file tạm rồi đổi tên, nên nếu game tắt giữa chừng thì file cũ vẫn còn nguyên, không bị ghi dở. Nên dùng cho file lưu game.

Các tham số
pathĐường dẫn.
dataNội dung, có thể là dữ liệu nhị phân.
Giá trị trả về
true nếu ghi được.

◆ save_path()

std::string njin::save_path ( const context & ctx,
const char * file_name )

Đường dẫn đầy đủ của một file lưu game, trong thư mục riêng của người dùng.

Thư mục là APPDATA%/<tên game> trên Windows, ~/Library/Application Support/<tên game> trên macOS và ~/.local/share/<tên game> trên Linux. Tên game lấy từ config::app_name, hoặc từ tiêu đề cửa sổ nếu để trống. Thư mục được tạo nếu chưa có.

Các tham số
ctxContext của engine.
file_nameTên file, ví dụ "save.txt".
Giá trị trả về
Đường dẫn đầy đủ.