g_strdup_printf中不需要的换行符或空符号

时间:2014-02-17 22:09:34

标签: c winapi printf glib

使用data = g_strdup_printf("%.*s", len, buf) guint lengchar *buf时,我得到的字符串似乎包含换行符号或一些空格。

我知道,因为如果我将此字符串放在另一个g_strdup_printf("%s%s%s", "blah1", data, "blah2");并在win32 MessageBoxA()中打印 - 它将不包含blah1datainsidesblah2

blah1datainsides
blah2

可能的原因是什么?如何解决这个问题?

重要补充:我正在使用g_io_channel_read_line来获取这些数据,并且似乎它获取包含换行符的数据,如果是这样,我该如何摆脱它?

1 个答案:

答案 0 :(得分:0)

要删除尾随空格,您可以使用g_strchomp。对于前导空格,有g_strchug,前导和尾随g_strstrip。