Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/cxong/tinydir.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLautis Sun <lautis0503@gmail.com>2016-06-25 18:39:05 +0300
committerLautis Sun <lautis0503@gmail.com>2016-06-25 18:39:05 +0300
commite4aea2b2167ea86d662a24bf22adb49a8cde8c61 (patch)
tree79baa04f9cd0d17c50474248e7b8d4b7ed6ae652
parent195dcfaa5ff13ec87814c23ca3b9918e3bed3abd (diff)
Add sample: list directory to file with unicode support
-rw-r--r--samples/list_to_file.c41
1 files changed, 41 insertions, 0 deletions
diff --git a/samples/list_to_file.c b/samples/list_to_file.c
new file mode 100644
index 0000000..0b1780a
--- /dev/null
+++ b/samples/list_to_file.c
@@ -0,0 +1,41 @@
+#include <stdio.h>
+
+#ifndef TINYDIR_H
+#define _UNICODE
+#include "tinydir.h"
+#endif
+
+int main(void) {
+
+ FILE *fp;
+ tinydir_dir dir;
+ tinydir_open(&dir, TINYDIR_STRING("/path/to/dir"));
+
+ fp = fopen("/file/to/output","wb");
+
+#ifdef _WIN32
+ char bom[] = "\xFF\xFE";
+ fwrite(bom, 1, 2, fp);
+#endif
+
+ while (dir.has_next)
+ {
+ tinydir_file file;
+ tinydir_readfile(&dir, &file);
+
+ fwrite(file.name, sizeof(_tinydir_char_t), _tinydir_strlen(file.name), fp);
+ if (file.is_dir)
+ {
+ fwrite(TINYDIR_STRING("/"), sizeof(_tinydir_char_t), _tinydir_strlen(TINYDIR_STRING("/")), fp);
+ }
+ fwrite(TINYDIR_STRING("\n"), sizeof(_tinydir_char_t), _tinydir_strlen(TINYDIR_STRING("/")), fp);
+
+ tinydir_next(&dir);
+ }
+
+ tinydir_close(&dir);
+
+ fclose(fp);
+
+ return 0;
+}