I put a message in queue,as I know queue manager sets msgId value.
When I trace message,I see it puts a null character and it creates a problem on side that I send message to.
I checked documentation and it;
A MsgId generated by the queue manager consists of a 4-byte product identifier (AMQ¬ or CSQ¬ in either ASCII or EBCDIC, where ¬ represents a blank character), followed by a product-specific implementation of a unique string. In IBM® MQ this contains the first 12 characters of the queue-manager name, and a value derived from the system clock.
This is my msgId

any idea why it creates msgId with null character and how can I solve it?
MsgId is defined as a byte string, which allows any byte values to be included. As you have already found, MsgId values generated by MQ use character data for portions of the byte string and add a binary value in the remaining bytes to create a unique identifier. The binary portion is derived from the system clock and can be expected to contain arbitrary byte values.
If the receiving application has specific requirements for the format of the MsgId and the byte values it can contain, then the putting application will need to generate a MsgId that conforms to those requirements.