天天看点

中文转换为全拼和首字母

介绍一个功能,可以把汉语转化成拼音,包括全拼和首字母,甚至可以带音调。

大家可以去http://pinyin4j.sourceforge.net/ 看看,下载支持jar包:pinyin4j-2.5.0.jar。

我也是看的demo,大家可以把下面的代码运行看看。

  1

中文转换为全拼和首字母
中文转换为全拼和首字母

 18

中文转换为全拼和首字母

 19

中文转换为全拼和首字母

package  pinyin;

 20

中文转换为全拼和首字母

 21

中文转换为全拼和首字母

import  java.awt.BorderLayout;

 22

中文转换为全拼和首字母

import  java.awt.Dimension;

 23

中文转换为全拼和首字母

import  java.awt.Font;

 24

中文转换为全拼和首字母

import  java.awt.GridLayout;

 25

中文转换为全拼和首字母

import  java.awt.event.WindowAdapter;

 26

中文转换为全拼和首字母

import  java.awt.event.WindowEvent;

 27

中文转换为全拼和首字母

 28

中文转换为全拼和首字母

import  javax.swing.JApplet;

 29

中文转换为全拼和首字母

import  javax.swing.JButton;

 30

中文转换为全拼和首字母

import  javax.swing.JComboBox;

 31

中文转换为全拼和首字母

import  javax.swing.JFrame;

 32

中文转换为全拼和首字母

import  javax.swing.JLabel;

 33

中文转换为全拼和首字母

import  javax.swing.JPanel;

 34

中文转换为全拼和首字母

import  javax.swing.JScrollPane;

 35

中文转换为全拼和首字母

import  javax.swing.JTabbedPane;

 36

中文转换为全拼和首字母

import  javax.swing.JTextArea;

 37

中文转换为全拼和首字母

import  javax.swing.JTextField;

 38

中文转换为全拼和首字母

 39

中文转换为全拼和首字母

import  net.sourceforge.pinyin4j.PinyinHelper;

 40

中文转换为全拼和首字母

import  net.sourceforge.pinyin4j.format.HanyuPinyinCaseType;

 41

中文转换为全拼和首字母

import  net.sourceforge.pinyin4j.format.HanyuPinyinOutputFormat;

 42

中文转换为全拼和首字母

import  net.sourceforge.pinyin4j.format.HanyuPinyinToneType;

 43

中文转换为全拼和首字母

import  net.sourceforge.pinyin4j.format.HanyuPinyinVCharType;

 44

中文转换为全拼和首字母

import  net.sourceforge.pinyin4j.format.exception.BadHanyuPinyinOutputFormatCombination;

 45

中文转换为全拼和首字母

 46

中文转换为全拼和首字母
中文转换为全拼和首字母

 56

中文转换为全拼和首字母
中文转换为全拼和首字母

 62

中文转换为全拼和首字母

public   class  Pinyin4jAppletDemo  extends  JApplet

 63

中文转换为全拼和首字母
中文转换为全拼和首字母
中文转换为全拼和首字母

{

 64

中文转换为全拼和首字母

    private static final Dimension APP_SIZE = new Dimension(600, 400);

 65

中文转换为全拼和首字母

 66

中文转换为全拼和首字母

    private static final long serialVersionUID = -1934962385592030162L;

 67

中文转换为全拼和首字母

 68

中文转换为全拼和首字母

    private JPanel jContentPane = null;

 69

中文转换为全拼和首字母

 70

中文转换为全拼和首字母

    private JTabbedPane jTabbedPane = null;

 71

中文转换为全拼和首字母

 72

中文转换为全拼和首字母

    private JPanel formattedCharPanel = null;

 73

中文转换为全拼和首字母

 74

中文转换为全拼和首字母

    private JPanel optionPanel = null;

 75

中文转换为全拼和首字母

 76

中文转换为全拼和首字母

    private JButton convertButton = null;

 77

中文转换为全拼和首字母

 78

中文转换为全拼和首字母

    private JPanel buttonPanel = null;

 79

中文转换为全拼和首字母

 80

中文转换为全拼和首字母

    private JTextArea formattedOutputField = null;

 81

中文转换为全拼和首字母

 82

中文转换为全拼和首字母

    private JComboBox toneTypesComboBox = null;

 83

中文转换为全拼和首字母

 84

中文转换为全拼和首字母

    private JComboBox vCharTypesComboBox = null;

 85

中文转换为全拼和首字母

 86

中文转换为全拼和首字母

    private JComboBox caseTypesComboBox = null;

 87

中文转换为全拼和首字母

 88

中文转换为全拼和首字母

    private static String appName = "pinyin4j-2.0.0 applet demo";

 89

中文转换为全拼和首字母

 90

中文转换为全拼和首字母
中文转换为全拼和首字母

 95

中文转换为全拼和首字母

    private JTextField getCharTextField()

 96

中文转换为全拼和首字母
中文转换为全拼和首字母
中文转换为全拼和首字母

{

 97

中文转换为全拼和首字母

        if (charTextField == null)

 98

中文转换为全拼和首字母
中文转换为全拼和首字母
中文转换为全拼和首字母

{

 99

中文转换为全拼和首字母

            charTextField = new JTextField();

100

中文转换为全拼和首字母

            charTextField.setFont(new Font("Dialog", Font.PLAIN, 12)); // Generated

101

中文转换为全拼和首字母

            charTextField.setText("和"); // Generated

102

中文转换为全拼和首字母

            charTextField.setPreferredSize(new Dimension(26, 20)); // Generated

103

中文转换为全拼和首字母

        }

104

中文转换为全拼和首字母

        return charTextField;

105

中文转换为全拼和首字母

    }

106

中文转换为全拼和首字母

107

中文转换为全拼和首字母
中文转换为全拼和首字母

112

中文转换为全拼和首字母

    private JPanel getUnformattedCharPanel()

113

中文转换为全拼和首字母
中文转换为全拼和首字母
中文转换为全拼和首字母

{

114

中文转换为全拼和首字母

        if (unformattedCharPanel == null)

115

中文转换为全拼和首字母
中文转换为全拼和首字母
中文转换为全拼和首字母

{

116

中文转换为全拼和首字母

            unformattedHanyuPinyinLabel = new JLabel();

117

中文转换为全拼和首字母

            unformattedHanyuPinyinLabel.setText("Hanyu Pinyin"); // Generated

118

中文转换为全拼和首字母

            GridLayout gridLayout = new GridLayout();

119

中文转换为全拼和首字母

            gridLayout.setRows(2); // Generated

120

中文转换为全拼和首字母

            gridLayout.setHgap(1); // Generated

121

中文转换为全拼和首字母

            gridLayout.setVgap(1); // Generated

122

中文转换为全拼和首字母

            gridLayout.setColumns(3); // Generated

123

中文转换为全拼和首字母

            unformattedCharPanel = new JPanel();

124

中文转换为全拼和首字母

            unformattedCharPanel.setLayout(gridLayout); // Generated

125

中文转换为全拼和首字母

            unformattedCharPanel.add(getUnformattedHanyuPinyinPanel(), null); // Generated

126

中文转换为全拼和首字母

            unformattedCharPanel.add(getUnformattedTongyongPinyinPanel(), null); // Generated

127

中文转换为全拼和首字母

            unformattedCharPanel.add(getUnformattedWadePinyinPanel(), null); // Generated

128

中文转换为全拼和首字母

            unformattedCharPanel.add(getUnformattedMPS2PinyinPanel(), null); // Generated

129

中文转换为全拼和首字母

            unformattedCharPanel.add(getUnformattedYalePinyinPanel(), null); // Generated

130

中文转换为全拼和首字母

            unformattedCharPanel.add(getUnformattedGwoyeuRomatzyhPanel(), null); // Generated

131

中文转换为全拼和首字母

        }

132

中文转换为全拼和首字母

        return unformattedCharPanel;

133

中文转换为全拼和首字母

    }

134

中文转换为全拼和首字母

135

中文转换为全拼和首字母
中文转换为全拼和首字母

140

中文转换为全拼和首字母

    private JTextArea getUnformattedHanyuPinyinTextArea()

141

中文转换为全拼和首字母
中文转换为全拼和首字母
中文转换为全拼和首字母

{

142

中文转换为全拼和首字母

        if (unformattedHanyuPinyinTextArea == null)

143

中文转换为全拼和首字母
中文转换为全拼和首字母
中文转换为全拼和首字母

{

144

中文转换为全拼和首字母

            unformattedHanyuPinyinTextArea = new JTextArea();

145

中文转换为全拼和首字母

            unformattedHanyuPinyinTextArea.setEditable(false); // Generated

146

中文转换为全拼和首字母

            unformattedHanyuPinyinTextArea.setLineWrap(true); // Generated

147

中文转换为全拼和首字母

        }

148

中文转换为全拼和首字母

        return unformattedHanyuPinyinTextArea;

149

中文转换为全拼和首字母

    }

150

中文转换为全拼和首字母

151

中文转换为全拼和首字母
中文转换为全拼和首字母

156

中文转换为全拼和首字母

    private JPanel getUnformattedHanyuPinyinPanel()

157

中文转换为全拼和首字母
中文转换为全拼和首字母
中文转换为全拼和首字母

{

158

中文转换为全拼和首字母

        if (unformattedHanyuPinyinPanel == null)

159

中文转换为全拼和首字母
中文转换为全拼和首字母
中文转换为全拼和首字母

{<