adding c:test.txt (and friends) as input should be also interesting
UNC paths should also be tested
 
A+

+    } Paths[] = { {"C:/directory/test.txt", "C:", "/directory/",
"test", ".txt"},
+                {"C:\\directory\\test.txt", "C:", "\\directory\\",
"test", ".txt"},
+                {"C:\\directory\\test", "C:", "\\directory\\", "test", ""},
+                {"C:\\directory\\.txt", "C:", "\\directory\\", "", ".txt"},
+                {"C:\\directory\\", "C:", "\\directory\\", "", ""},
+                {"C:\\test.txt", "C:", "\\", "test", ".txt"},
+                {"C:\\test", "C:", "\\", "test", ""},
+                {"C:\\.txt", "C:", "\\", "", ".txt"},
+                {"C:\\", "C:", "\\", "", ""},
+                {"\\directory\\test.txt", "", "\\directory\\", "test", ".txt"},
+                {"\\directory\\test", "", "\\directory\\", "test", ""},
+                {"\\directory\\.txt", "", "\\directory\\", "", ".txt"},
+                {"\\directory\\", "", "\\directory\\", "", ""},
+                {"\\test.txt", "", "\\", "test", ".txt"},
+                {"\\test", "", "\\", "test", ""},
+                {"\\.txt", "", "\\", "", ".txt"},
+                {"\\", "", "\\", "", ""},
+                {"test.txt", "", "", "test", ".txt"},
+                {"test", "", "", "test", ""},
+                {".txt", "", "", "", ".txt"},
+                {"", "", "", "", ""}};
--
Eric Pouech