Files
fx/test/cat.c
T
2026-07-12 22:15:25 +01:00

33 lines
610 B
C

#include <fx/io/file.h>
#include <fx/io/path.h>
#include <fx/stream.h>
#include <fx/string.h>
#include <fx/stringstream.h>
#include <stdio.h>
int main(int argc, const char **argv)
{
if (argc < 2) {
return -1;
}
const char *path = argv[1];
fx_file *src = NULL;
fx_result result
= fx_file_open(NULL, FX_CSTR(path), FX_FILE_READ_ONLY, &src);
if (fx_result_is_error(result)) {
fx_throw(result);
return -1;
}
fx_stream_buffer *buf = fx_stream_buffer_create_dynamic(1024);
size_t nr_read;
fx_stream_read_all_bytes_s(src, fx_stdout, buf, &nr_read);
fx_stream_buffer_unref(buf);
return 0;
}