天天看點

中文轉換為全拼和首字母

介紹一個功能,可以把漢語轉化成拼音,包括全拼和首字母,甚至可以帶音調。

大家可以去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

中文轉換為全拼和首字母
中文轉換為全拼和首字母
中文轉換為全拼和首字母

{<