The three functions are the construction functions of messagepart. Now let's analyze the differences.
<Br/> messagepart (byte [] Contents, string mimetype, string contentid, string contentlocation, string ENC) <br/>
This function places the resource array completely in messagepart.
In theory, the maximum array size limit is less than 10 K (roughly less than 10 K). However, after trying to use some mobile phones, this limit is much larger than 10 K,
Messagpart (byte [] Contents, int offset, int length, string mimetype, contentid, string contentlocation, string ENC) <br/>
This function can be used to capture the content in the resource array. the size limit is also 10 KB,
Messagepart (inputstream is, string mimetype, string contentid, string contentloaction, string ENC)
This function uses the resource stream to save the trouble of converting the stream into an array. At the same time, it does not limit the size of resources to be sent.
I have never used this constructor ,,
However, when you encounter sizeexceededexception, try this constructor, especially on some low-end models,