介绍一个功能,可以把汉语转化成拼音,包括全拼和首字母,甚至可以带音调。
大家可以去http://pinyin4j.sourceforge.net/ 看看,下载支持jar包:pinyin4j-2.5.0.jar。
我也是看的demo,大家可以把下面的代码运行看看。
1
/** */
/**
2
* This file is part of pinyin4j (http://sourceforge.net/projects/pinyin4j/)
3
* and distributed under GNU GENERAL PUBLIC LICENSE (GPL).
4
*
5
* pinyin4j is free software; you can redistribute it and/or modify
6
* it under the terms of the GNU General Public License as published by
7
* the Free Software Foundation; either version 2 of the License, or
8
* (at your option) any later version.
9
*
10
* pinyin4j is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
* GNU General Public License for more details.
14
*
15
* You should have received a copy of the GNU General Public License
16
* along with pinyin4j.
17
*/
18![](/Images/OutliningIndicators/None.gif)
19
package
pinyin;
20![](/Images/OutliningIndicators/None.gif)
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![](/Images/OutliningIndicators/None.gif)
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![](/Images/OutliningIndicators/None.gif)
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![](/Images/OutliningIndicators/None.gif)
46![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
/** */
/**
47
* This code was edited or generated using CloudGarden's Jigloo SWT/Swing GUI
48
* Builder, which is free for non-commercial use. If Jigloo is being used
49
* commercially (ie, by a corporation, company or business for any purpose
50
* whatever) then you should purchase a license for each developer using Jigloo.
51
* Please visit www.cloudgarden.com for details. Use of Jigloo implies
52
* acceptance of these licensing terms. A COMMERCIAL LICENSE HAS NOT BEEN
53
* PURCHASED FOR THIS MACHINE, SO JIGLOO OR THIS CODE CANNOT BE USED LEGALLY FOR
54
* ANY CORPORATE OR COMMERCIAL PURPOSE.
55
*/
56![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
/** */
/**
57
* A demo show the functions of pinyin4j library
58
*
59
* @author Li Min (xmlerlimin@gmail.com)
60
*
61
*/
62
public
class
Pinyin4jAppletDemo
extends
JApplet
63![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
{
64
private static final Dimension APP_SIZE = new Dimension(600, 400);
65![](/Images/OutliningIndicators/InBlock.gif)
66
private static final long serialVersionUID = -1934962385592030162L;
67![](/Images/OutliningIndicators/InBlock.gif)
68
private JPanel jContentPane = null;
69![](/Images/OutliningIndicators/InBlock.gif)
70
private JTabbedPane jTabbedPane = null;
71![](/Images/OutliningIndicators/InBlock.gif)
72
private JPanel formattedCharPanel = null;
73![](/Images/OutliningIndicators/InBlock.gif)
74
private JPanel optionPanel = null;
75![](/Images/OutliningIndicators/InBlock.gif)
76
private JButton convertButton = null;
77![](/Images/OutliningIndicators/InBlock.gif)
78
private JPanel buttonPanel = null;
79![](/Images/OutliningIndicators/InBlock.gif)
80
private JTextArea formattedOutputField = null;
81![](/Images/OutliningIndicators/InBlock.gif)
82
private JComboBox toneTypesComboBox = null;
83![](/Images/OutliningIndicators/InBlock.gif)
84
private JComboBox vCharTypesComboBox = null;
85![](/Images/OutliningIndicators/InBlock.gif)
86
private JComboBox caseTypesComboBox = null;
87![](/Images/OutliningIndicators/InBlock.gif)
88
private static String appName = "pinyin4j-2.0.0 applet demo";
89![](/Images/OutliningIndicators/InBlock.gif)
90![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
/** *//**
91
* This method initializes charTextField
92
*
93
* @return javax.swing.JTextField
94
*/
95
private JTextField getCharTextField()
96![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
97
if (charTextField == null)
98![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
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![](/Images/OutliningIndicators/InBlock.gif)
107![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
/** *//**
108
* This method initializes unformattedCharPanel
109
*
110
* @return javax.swing.JPanel
111
*/
112
private JPanel getUnformattedCharPanel()
113![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
114
if (unformattedCharPanel == null)
115![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
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![](/Images/OutliningIndicators/InBlock.gif)
135![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
/** *//**
136
* This method initializes unformattedHanyuPinyinTextArea
137
*
138
* @return javax.swing.JTextArea
139
*/
140
private JTextArea getUnformattedHanyuPinyinTextArea()
141![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
142
if (unformattedHanyuPinyinTextArea == null)
143![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
144
unformattedHanyuPinyinTextArea = new JTextArea();
145
unformattedHanyuPinyinTextArea.setEditable(false); // Generated
146
unformattedHanyuPinyinTextArea.setLineWrap(true); // Generated
147
}
148
return unformattedHanyuPinyinTextArea;
149
}
150![](/Images/OutliningIndicators/InBlock.gif)
151![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
/** *//**
152
* This method initializes unformattedHanyuPinyinPanel
153
*
154
* @return javax.swing.JPanel
155
*/
156
private JPanel getUnformattedHanyuPinyinPanel()
157![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
158
if (unformattedHanyuPinyinPanel == null)
159![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{<
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](/Images/OutliningIndicators/ContractedBlock.gif)
2
![](/Images/OutliningIndicators/InBlock.gif)
3
![](/Images/OutliningIndicators/InBlock.gif)
4
![](/Images/OutliningIndicators/InBlock.gif)
5
![](/Images/OutliningIndicators/InBlock.gif)
6
![](/Images/OutliningIndicators/InBlock.gif)
7
![](/Images/OutliningIndicators/InBlock.gif)
8
![](/Images/OutliningIndicators/InBlock.gif)
9
![](/Images/OutliningIndicators/InBlock.gif)
10
![](/Images/OutliningIndicators/InBlock.gif)
11
![](/Images/OutliningIndicators/InBlock.gif)
12
![](/Images/OutliningIndicators/InBlock.gif)
13
![](/Images/OutliningIndicators/InBlock.gif)
14
![](/Images/OutliningIndicators/InBlock.gif)
15
![](/Images/OutliningIndicators/InBlock.gif)
16
![](/Images/OutliningIndicators/InBlock.gif)
17
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)
18
![](/Images/OutliningIndicators/None.gif)
19
![](/Images/OutliningIndicators/None.gif)
20
![](/Images/OutliningIndicators/None.gif)
21
![](/Images/OutliningIndicators/None.gif)
22
![](/Images/OutliningIndicators/None.gif)
23
![](/Images/OutliningIndicators/None.gif)
24
![](/Images/OutliningIndicators/None.gif)
25
![](/Images/OutliningIndicators/None.gif)
26
![](/Images/OutliningIndicators/None.gif)
27
![](/Images/OutliningIndicators/None.gif)
28
![](/Images/OutliningIndicators/None.gif)
29
![](/Images/OutliningIndicators/None.gif)
30
![](/Images/OutliningIndicators/None.gif)
31
![](/Images/OutliningIndicators/None.gif)
32
![](/Images/OutliningIndicators/None.gif)
33
![](/Images/OutliningIndicators/None.gif)
34
![](/Images/OutliningIndicators/None.gif)
35
![](/Images/OutliningIndicators/None.gif)
36
![](/Images/OutliningIndicators/None.gif)
37
![](/Images/OutliningIndicators/None.gif)
38
![](/Images/OutliningIndicators/None.gif)
39
![](/Images/OutliningIndicators/None.gif)
40
![](/Images/OutliningIndicators/None.gif)
41
![](/Images/OutliningIndicators/None.gif)
42
![](/Images/OutliningIndicators/None.gif)
43
![](/Images/OutliningIndicators/None.gif)
44
![](/Images/OutliningIndicators/None.gif)
45
![](/Images/OutliningIndicators/None.gif)
46
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](/Images/OutliningIndicators/ContractedBlock.gif)
47
![](/Images/OutliningIndicators/InBlock.gif)
48
![](/Images/OutliningIndicators/InBlock.gif)
49
![](/Images/OutliningIndicators/InBlock.gif)
50
![](/Images/OutliningIndicators/InBlock.gif)
51
![](/Images/OutliningIndicators/InBlock.gif)
52
![](/Images/OutliningIndicators/InBlock.gif)
53
![](/Images/OutliningIndicators/InBlock.gif)
54
![](/Images/OutliningIndicators/InBlock.gif)
55
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)
56
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](/Images/OutliningIndicators/ContractedBlock.gif)
57
![](/Images/OutliningIndicators/InBlock.gif)
58
![](/Images/OutliningIndicators/InBlock.gif)
59
![](/Images/OutliningIndicators/InBlock.gif)
60
![](/Images/OutliningIndicators/InBlock.gif)
61
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)
62
![](/Images/OutliningIndicators/None.gif)
63
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](/Images/OutliningIndicators/ContractedBlock.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/9b8a8a44dd1c74ae49c20a7cd451974e.gif)
64
![](/Images/OutliningIndicators/InBlock.gif)
65
![](/Images/OutliningIndicators/InBlock.gif)
66
![](/Images/OutliningIndicators/InBlock.gif)
67
![](/Images/OutliningIndicators/InBlock.gif)
68
![](/Images/OutliningIndicators/InBlock.gif)
69
![](/Images/OutliningIndicators/InBlock.gif)
70
![](/Images/OutliningIndicators/InBlock.gif)
71
![](/Images/OutliningIndicators/InBlock.gif)
72
![](/Images/OutliningIndicators/InBlock.gif)
73
![](/Images/OutliningIndicators/InBlock.gif)
74
![](/Images/OutliningIndicators/InBlock.gif)
75
![](/Images/OutliningIndicators/InBlock.gif)
76
![](/Images/OutliningIndicators/InBlock.gif)
77
![](/Images/OutliningIndicators/InBlock.gif)
78
![](/Images/OutliningIndicators/InBlock.gif)
79
![](/Images/OutliningIndicators/InBlock.gif)
80
![](/Images/OutliningIndicators/InBlock.gif)
81
![](/Images/OutliningIndicators/InBlock.gif)
82
![](/Images/OutliningIndicators/InBlock.gif)
83
![](/Images/OutliningIndicators/InBlock.gif)
84
![](/Images/OutliningIndicators/InBlock.gif)
85
![](/Images/OutliningIndicators/InBlock.gif)
86
![](/Images/OutliningIndicators/InBlock.gif)
87
![](/Images/OutliningIndicators/InBlock.gif)
88
![](/Images/OutliningIndicators/InBlock.gif)
89
![](/Images/OutliningIndicators/InBlock.gif)
90
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
91
![](/Images/OutliningIndicators/InBlock.gif)
92
![](/Images/OutliningIndicators/InBlock.gif)
93
![](/Images/OutliningIndicators/InBlock.gif)
94
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
95
![](/Images/OutliningIndicators/InBlock.gif)
96
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/9b8a8a44dd1c74ae49c20a7cd451974e.gif)
97
![](/Images/OutliningIndicators/InBlock.gif)
98
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/9b8a8a44dd1c74ae49c20a7cd451974e.gif)
99
![](/Images/OutliningIndicators/InBlock.gif)
100
![](/Images/OutliningIndicators/InBlock.gif)
101
![](/Images/OutliningIndicators/InBlock.gif)
102
![](/Images/OutliningIndicators/InBlock.gif)
103
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
104
![](/Images/OutliningIndicators/InBlock.gif)
105
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
106
![](/Images/OutliningIndicators/InBlock.gif)
107
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
108
![](/Images/OutliningIndicators/InBlock.gif)
109
![](/Images/OutliningIndicators/InBlock.gif)
110
![](/Images/OutliningIndicators/InBlock.gif)
111
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
112
![](/Images/OutliningIndicators/InBlock.gif)
113
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/9b8a8a44dd1c74ae49c20a7cd451974e.gif)
114
![](/Images/OutliningIndicators/InBlock.gif)
115
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/9b8a8a44dd1c74ae49c20a7cd451974e.gif)
116
![](/Images/OutliningIndicators/InBlock.gif)
117
![](/Images/OutliningIndicators/InBlock.gif)
118
![](/Images/OutliningIndicators/InBlock.gif)
119
![](/Images/OutliningIndicators/InBlock.gif)
120
![](/Images/OutliningIndicators/InBlock.gif)
121
![](/Images/OutliningIndicators/InBlock.gif)
122
![](/Images/OutliningIndicators/InBlock.gif)
123
![](/Images/OutliningIndicators/InBlock.gif)
124
![](/Images/OutliningIndicators/InBlock.gif)
125
![](/Images/OutliningIndicators/InBlock.gif)
126
![](/Images/OutliningIndicators/InBlock.gif)
127
![](/Images/OutliningIndicators/InBlock.gif)
128
![](/Images/OutliningIndicators/InBlock.gif)
129
![](/Images/OutliningIndicators/InBlock.gif)
130
![](/Images/OutliningIndicators/InBlock.gif)
131
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
132
![](/Images/OutliningIndicators/InBlock.gif)
133
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
134
![](/Images/OutliningIndicators/InBlock.gif)
135
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
136
![](/Images/OutliningIndicators/InBlock.gif)
137
![](/Images/OutliningIndicators/InBlock.gif)
138
![](/Images/OutliningIndicators/InBlock.gif)
139
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
140
![](/Images/OutliningIndicators/InBlock.gif)
141
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/9b8a8a44dd1c74ae49c20a7cd451974e.gif)
142
![](/Images/OutliningIndicators/InBlock.gif)
143
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/9b8a8a44dd1c74ae49c20a7cd451974e.gif)
144
![](/Images/OutliningIndicators/InBlock.gif)
145
![](/Images/OutliningIndicators/InBlock.gif)
146
![](/Images/OutliningIndicators/InBlock.gif)
147
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
148
![](/Images/OutliningIndicators/InBlock.gif)
149
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
150
![](/Images/OutliningIndicators/InBlock.gif)
151
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
152
![](/Images/OutliningIndicators/InBlock.gif)
153
![](/Images/OutliningIndicators/InBlock.gif)
154
![](/Images/OutliningIndicators/InBlock.gif)
155
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
156
![](/Images/OutliningIndicators/InBlock.gif)
157
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/9b8a8a44dd1c74ae49c20a7cd451974e.gif)
158
![](/Images/OutliningIndicators/InBlock.gif)
159
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/9b8a8a44dd1c74ae49c20a7cd451974e.gif)