I don't know any API method, but the conversion is quite simple. You cand find details in JVM spec here.
Primitive types are represented by one character:
B = byte
C = char
D = double
F = float
I = int
J = long
S = short
Z = boolean
Class and interface types are represented by the fully qualified name, with an
'L' prefix and a ';' suffix. The dots '.' in the fully qualified class name are
replaced by '/' (for inner classes, the '.' separating the outer class name from the inner class name is replaced by a '$'). So the internal name of the String class would be "Ljava/lang/String;" and the internal name of the inner class "java.awt.geom.Arc2D.Float" would be "Ljava/awt/geom/Arc2D$Float;".
Array names begin with an opening bracket '[' followed by the component type name (primitive or reference). An "int[]" thus becomes "[I" and a "javax.swing.JFrame[][]" becomes "[[Ljavax.swing.JFrame;".