Visual Basic的"Space“函数返回由指定数量的空格组成的字符串。
Visual Basic示例:
Property Get Sections() As String
Dim sBuf As String
Dim iSize As String
Dim iRetCode As Integer
sBuf = Space$(8192)
iSize = Len(sBuf)
iRetCode = GetPrivateProfileString(0&, 0&, m_sDefault, sBuf, iSize, m_sPath)
If (iSize > 0) Then
Sections = Left$(sBuf, iRetCode)
Else
Sections = ""
End If
End Property"Space“在Delphi中的等价物是什么?谢谢。
发布于 2013-03-26 22:17:46
要回答直接的问题,最接近的等价物是StringOfChar
sBuf := StringOfChar(' ', 8192);但是,如果您将问题中的代码转换为Delphi,则不会在字符串中填充空格。在分配字符串时,VB代码实际上对字符串的内容并不感兴趣,它只是使用Space$作为一种简单的方式来分配某个长度的字符串。空格被API调用返回的字符串覆盖。
在Delphi中,您可以通过以下方式分配一个长度为8192的字符串:
SetLength(sBuf, 8192);实际上,在Delphi中,您可以使用TIniFile来读取INI文件。因此,如果您实际上正在尝试翻译问题中的代码,我建议您不要这样做,而是使用Delphi的内置库。
https://stackoverflow.com/questions/15639254
复制相似问题