1 // Archive/Common/ItemNameUtils.cpp
5 #include "ItemNameUtils.h"
10 static const wchar_t kOSDirDelimiter = WCHAR_PATH_SEPARATOR;
11 static const wchar_t kDirDelimiter = L'/';
13 UString MakeLegalName(const UString &name)
15 UString zipName = name;
16 zipName.Replace(kOSDirDelimiter, kDirDelimiter);
20 UString GetOSName(const UString &name)
22 UString newName = name;
23 newName.Replace(kDirDelimiter, kOSDirDelimiter);
27 UString GetOSName2(const UString &name)
31 UString newName = GetOSName(name);
32 if (newName[newName.Length() - 1] == kOSDirDelimiter)
33 newName.Delete(newName.Length() - 1);
37 bool HasTailSlash(const AString &name, UINT codePage)
43 CharPrevExA((WORD)codePage, name, &name[name.Length()], 0);
45 (LPCSTR)(name) + (name.Length() - 1);
47 return (*prev == '/');
51 UString WinNameToOSName(const UString &name)
53 UString newName = name;
54 newName.Replace(L'\\', kOSDirDelimiter);