本文整理汇总了C++中WString::Buffer方法的典型用法代码示例。如果您正苦于以下问题:C++ WString::Buffer方法的具体用法?C++ WString::Buffer怎么用?C++ WString::Buffer使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WString
的用法示例。
在下文中一共展示了WString::Buffer方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: wtof_test
double wtof_test(const WString& string, bool& success)
{
wchar_t* endptr = 0;
double result = wcstod(string.Buffer(), &endptr);
success = endptr == string.Buffer() + string.Length();
return result;
}
示例2: wtoi_test
vint wtoi_test(const WString& string, bool& success)
{
wchar_t* endptr = 0;
vint result = wcstol(string.Buffer(), &endptr, 10);
success = endptr == string.Buffer() + string.Length() && itow(result) == string;
return result;
}
示例3:
vuint64_t wtou64_test(const WString& string, bool& success)
{
wchar_t* endptr = 0;
vuint64_t result = _wcstoui64(string.Buffer(), &endptr, 10);
success = endptr == string.Buffer() + string.Length() && u64tow(result) == string;
return result;
}
示例4: wtoa
AString wtoa(const WString& string)
{
vint len = _wtoa(string.Buffer(), 0, 0);
char* buffer = new char[len];
memset(buffer, 0, len*sizeof(*buffer));
_wtoa(string.Buffer(), buffer, (int)len);
AString s = buffer;
delete[] buffer;
return s;
}
示例5: wtoa
FileStream::FileStream(const WString& fileName, AccessRight _accessRight)
:accessRight(_accessRight)
{
const wchar_t* mode=L"rb";
switch(accessRight)
{
case ReadOnly:
mode=L"rb";
break;
case WriteOnly:
mode=L"wb";
break;
case ReadWrite:
mode=L"w+b";
break;
}
#if defined VCZH_MSVC
if(_wfopen_s(&file, fileName.Buffer(), mode)!=0)
{
file=0;
}
#elif defined VCZH_GCC
AString fileNameA = wtoa(fileName);
AString modeA = wtoa(mode);
file = fopen(fileNameA.Buffer(), modeA.Buffer());
#endif
}
示例6: GetFiles
bool Folder::GetFiles(std::list<Face::File>& files)const
{
if (!Exists())
return false;
WIN32_FIND_DATA findData;
HANDLE findHandle = INVALID_HANDLE_VALUE;
while (true)
{
if (findHandle == INVALID_HANDLE_VALUE)
{
WString searchPath = (filePath_ / L"*").GetFullPath();
findHandle = FindFirstFile(searchPath.Buffer(), &findData);
if (findHandle == INVALID_HANDLE_VALUE)
{
break;
}
}
else
{
BOOL result = FindNextFile(findHandle, &findData);
if (result == 0)
{
FindClose(findHandle);
break;
}
}
if (!(findData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY))
{
files.push_back(File(filePath_ / findData.cFileName));
}
}
return true;
}
示例7: wcsstr
Ptr<workflow::WfClassDeclaration> Workflow_InstallClass(const WString& className, Ptr<workflow::WfModule> module)
{
auto decls = &module->declarations;
auto reading = className.Buffer();
while (true)
{
auto delimiter = wcsstr(reading, L"::");
if (delimiter)
{
auto ns = MakePtr<WfNamespaceDeclaration>();
ns->name.value = WString(reading, delimiter - reading);
decls->Add(ns);
decls = &ns->declarations;
}
else
{
auto ctorClass = MakePtr<WfClassDeclaration>();
ctorClass->kind = WfClassKind::Class;
ctorClass->constructorType = WfConstructorType::Undefined;
ctorClass->name.value = reading;
decls->Add(ctorClass);
return ctorClass;
}
reading = delimiter + 2;
}
}
示例8: IsFileDirectory
bool IsFileDirectory(const WString& fullPath)
{
// Get file attributes.
WIN32_FILE_ATTRIBUTE_DATA info;
BOOL result=GetFileAttributesEx(fullPath.Buffer(), GetFileExInfoStandard, &info);
return (info.dwFileAttributes&FILE_ATTRIBUTE_DIRECTORY)!=0;
}
示例9: SplitSchemaName
WString SplitSchemaName(WString typeName, List<WString>& namespaces)
{
auto reading = typeName.Buffer();
while (auto split = wcsstr(reading, L"::"))
{
namespaces.Add(WString(reading, split - reading));
reading = split + 2;
}
return reading;
}
示例10: HexToBinary
void HexToBinary(stream::IStream& stream, const WString& hexText)
{
const wchar_t* buffer = hexText.Buffer();
vint count = hexText.Length() / 2;
for (vint i = 0; i < count; i++)
{
vuint8_t byte = (vuint8_t)(HexToInt(buffer[0]) * 16 + HexToInt(buffer[1]));
buffer += 2;
stream.Write(&byte, 1);
}
}
示例11: GetFileLastWriteTime
FILETIME GetFileLastWriteTime(const WString& fullPath)
{
// Get file attributes.
WIN32_FILE_ATTRIBUTE_DATA info;
BOOL result=GetFileAttributesEx(fullPath.Buffer(), GetFileExInfoStandard, &info);
// Get the localized string for the file last write date.
FILETIME localFileTime;
FileTimeToLocalFileTime(&info.ftLastWriteTime, &localFileTime);
return localFileTime;
}
示例12: GetFileSize
LARGE_INTEGER GetFileSize(const WString& fullPath)
{
// Get file attributes.
WIN32_FILE_ATTRIBUTE_DATA info;
BOOL result=GetFileAttributesEx(fullPath.Buffer(), GetFileExInfoStandard, &info);
// Get the string for file size
LARGE_INTEGER li;
li.HighPart=info.nFileSizeHigh;
li.LowPart=info.nFileSizeLow;
return li;
}
示例13: GetFileIcon
Ptr<GuiImageData> GetFileIcon(const WString& fullPath, UINT uFlags)
{
// Use SHGetFileInfo to get the correct icons for the specified directory or file.
SHFILEINFO info;
DWORD result=SHGetFileInfo(fullPath.Buffer(), 0, &info, sizeof(SHFILEINFO), uFlags);
Ptr<GuiImageData> imageData;
if(result)
{
Ptr<INativeImage> image=windows::CreateImageFromHICON(info.hIcon);
if(image)
{
imageData=new GuiImageData(image, 0);
}
DestroyIcon(info.hIcon);
}
return imageData;
}
示例14: WindowsImage
Ptr<INativeImage> WindowsImageService::CreateImageFromFile(const WString& path)
{
IWICBitmapDecoder* bitmapDecoder=0;
HRESULT hr=imagingFactory->CreateDecoderFromFilename(
path.Buffer(),
NULL,
GENERIC_READ,
WICDecodeMetadataCacheOnDemand,
&bitmapDecoder);
if(SUCCEEDED(hr))
{
return new WindowsImage(this, bitmapDecoder);
}
else
{
return 0;
}
}
示例15:
bool GuiSinglelineTextBox::TextElementOperatorCallback::BeforeModify(TextPos start, TextPos end, const WString& originalText, WString& inputText)
{
vint length=inputText.Length();
const wchar_t* input=inputText.Buffer();
for(vint i=0;i<length;i++)
{
if(*input==0 || *input==L'\r' || *input==L'\n')
{
length=i;
break;
}
}
if(length!=inputText.Length())
{
inputText=inputText.Left(length);
}
return true;
}