繁体   English   中英

是否可以将浮点数组转换为没有中间字节数组的字符串?

[英]is it possible to convert an array of float to a string without an intermediary byte array?

我需要将浮点数组作为字符串发送。 在应用程序的上下文中,我们需要可能的最佳性能。

根据我对SO的阅读,所有快速解决方案都意味着首先将float数组转换为字节数组,然后使用具有cp1852编码的base64或getBytes / getString。

因此可以避免c#中的中间字节数组?

(当然,我想以同样的速度进行相反的转换)

您可以尝试使用它:

string resultString = string.Join(",", floatArray);

您是否要将其转换为可读的字符串表示形式? 在这种情况下,您无需将其转换为字节数组。

public static string ToDecimalValuesString(this float[] items, string separator = ", ")
{
    var result = new StringBuilder();
    for (int i = 0; i < items.Length; i++)
    {
        result.Append(items[i].ToString("R", NumberFormatInfo.InvariantInfo));
        if (i < items.Length - 1)
            result.Append(separator);
    }

    return result.ToString();
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM