Steamworks.InteropHelp.PtrToStringUTF8 C# (CSharp) Method

PtrToStringUTF8() public static method

public static PtrToStringUTF8 ( IntPtr nativeUtf8 ) : string
nativeUtf8 System.IntPtr
return string
		public static string PtrToStringUTF8(IntPtr nativeUtf8) {
			if (nativeUtf8 == IntPtr.Zero) {
				return null;
			}

			int len = 0;

			while (Marshal.ReadByte(nativeUtf8, len) != 0) {
				++len;
			}

			if (len == 0) {
				return string.Empty;
			}

			byte[] buffer = new byte[len];
			Marshal.Copy(nativeUtf8, buffer, 0, buffer.Length);
			return Encoding.UTF8.GetString(buffer);
		}

Usage Example

Example #1
0
 /// <summary>
 /// <para> Get achievement name iAchievement in [0,GetNumAchievements)</para>
 /// </summary>
 public static string GetAchievementName(uint iAchievement)
 {
     InteropHelp.TestIfAvailableClient();
     return(InteropHelp.PtrToStringUTF8(NativeMethods.ISteamUserStats_GetAchievementName(iAchievement)));
 }
All Usage Examples Of Steamworks.InteropHelp::PtrToStringUTF8