]> gitweb.hhaalo.de Git - discspan.git/commitdiff
add: method printHumanReadSize
authorBastian Dehn <hhaalo@arcor.de>
Sun, 1 Oct 2017 20:11:41 +0000 (22:11 +0200)
committerBastian Dehn <hhaalo@arcor.de>
Sun, 1 Oct 2017 20:11:41 +0000 (22:11 +0200)
discspan.c

index ab4a99dff2ad7946a479fc261db435643b23effe..fe3429cc23e0b601bc7cae6188ba9ed09a07f22c 100644 (file)
@@ -35,21 +35,44 @@ int exists(const char *fname) {
        }
 }
 
-void splitter(const char *input,
-                               char *output, const char *rest,
-                               unsigned long long splitgroesse) {
-       struct stat st;
-       char pfad[255];
-       unsigned long long filesize;
+void printHumanReadSize(const char *output, unsigned long long int splitgroesse) {
        unsigned long long humanread;
        char einheit = 'B';
        char i = 0;
 
+       humanread = splitgroesse;
+       while (humanread >= 1024) {
+               i++;
+               humanread /= 1024;
+
+               switch (i) {
+                       case 1:
+                               einheit = 'K';
+                               break;
+                       case 2:
+                               einheit = 'M';
+                               break;
+                       case 3:
+                               einheit = 'G';
+                               break;
+               }
+       }
+
+       printf("Restlicher Platz in Bytes(%s): %lld (%lld %c)\n", output, splitgroesse, humanread, einheit);
+}
+
+void splitter(const char *input,
+                               char *output, const char *rest,
+                               unsigned long long splitgroesse) {
        FILE *in; FILE *out; FILE *re;
 
        in = fopen(input, "r");
        out = fopen(output, "w");
 
+       char pfad[255];
+       unsigned long long filesize;
+       struct stat st;
+
        while (fscanf(in, "%[^\n]\n", pfad) == 1) {
                stat(pfad, &st);
 
@@ -75,30 +98,9 @@ void splitter(const char *input,
                fclose(re);
        }
 
-       humanread = splitgroesse;
-
-       while (humanread >= 1024) {
-               i++;
-               humanread /= 1024;
-
-               switch (i) {
-                       case 1:
-                               einheit = 'K';
-                               break;
-                       case 2:
-                               einheit = 'M';
-                               break;
-                       case 3:
-                               einheit = 'G';
-                               break;
-               }
-       }
-
-       printf("Restlicher Platz in Bytes(%s): %lld (%lld %c)\n", output, splitgroesse, humanread, einheit);
+       printHumanReadSize(output, splitgroesse);
 }
 
-
-
 int cmpfunc(const void * filea,
                        const void * fileb) {
        long long unsigned int a = ((const struct file_size*)filea)->fsize;