浏览代码

Try Lonux directory if C:\ not exists

Arthur Yefimov 3 年之前
父节点
当前提交
ba612edd6e
共有 1 个文件被更改,包括 25 次插入25 次删除
  1. 25 25
      Programs/DirTest.Mod

+ 25 - 25
Programs/DirTest.Mod

@@ -1,25 +1,25 @@
-MODULE DirTest;
-IMPORT Dir, Out;
-
-PROCEDURE Do;
-VAR r: Dir.Rec;
-BEGIN
-  Dir.First(r, 'C:\');
-  IF r.res = 0 THEN (* Есть такой каталог *)
-    WHILE ~r.eod DO (* Выводим только каталоги *)
-      IF r.isDir THEN Out.Char('['); Out.String(r.name); Out.Char(']'); Out.Ln END;
-      Dir.Next(r)
-    END;
-    Dir.Rewind(r); (* Возвращаемся и *)
-    WHILE ~r.eod DO (* выводим только файлы *)
-      IF ~r.isDir THEN Out.String(r.name); Out.Ln END;
-      Dir.Next(r)
-    END;
-    Dir.Close(r)
-  ELSE Out.String('Could not find directory.'); Out.Ln
-  END
-END Do;
-
-BEGIN
-  Do
-END DirTest.
+MODULE DirTest;
+IMPORT Dir, Out;
+
+PROCEDURE Do;
+VAR r: Dir.Rec;
+BEGIN
+  Dir.First(r, 'C:\'); IF r.res # 0 THEN Dir.First(r, '.') END;
+  IF r.res = 0 THEN (* Есть такой каталог *)
+    WHILE ~r.eod DO (* Выводим только каталоги *)
+      IF r.isDir THEN Out.Char('['); Out.String(r.name); Out.Char(']'); Out.Ln END;
+      Dir.Next(r)
+    END;
+    Dir.Rewind(r); (* Возвращаемся и *)
+    WHILE ~r.eod DO (* выводим только файлы *)
+      IF ~r.isDir THEN Out.String(r.name); Out.Ln END;
+      Dir.Next(r)
+    END;
+    Dir.Close(r)
+  ELSE Out.String('Could not find directory.'); Out.Ln
+  END
+END Do;
+
+BEGIN
+  Do
+END DirTest.