#-------------------------------------------------------------------------------
# Copyright (c) 2000, 2007 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
#
# Contributors:
# IBM Corporation - initial implementationCorporation. All Rights Reserved.
#-------------------------------------------------------------------------------
# NLS_MESSAGEFORMAT_VAR

# File Name Conflict Dialog
Dialog_fileNameConflict_title=\u6587\u4ef6\u540d\u51b2\u7a81
Dialog_fileNameConflict_msg=IUPU0200W: \u6587\u4ef6\u201c{0}\u201d\u5df2\u5b58\u5728\u4e8e\u65b9\u6cd5\u5e93\u8d44\u6e90\u6587\u4ef6\u5939\u201c{1}\u201d\u4e2d\u3002
Dialog_fileNameConflict_note=\u6ce8\u610f\uff1a\u5176\u4ed6\u65b9\u6cd5\u5143\u7d20\u53ef\u80fd\u5f15\u7528\u6b64\u6587\u4ef6\u3002
Dialog_fileName_replace_msg=\u7528\u65b0\u6587\u4ef6\u66ff\u6362\u73b0\u6709\u6587\u4ef6
Dialog_fileName_unique_msg=\u4e3a\u6b64\u65b0\u6587\u4ef6\u6307\u5b9a\u552f\u4e00\u540d\u79f0
Dialog_fileName_selectAction_label=\u9009\u62e9\u64cd\u4f5c\uff1a

# Error Messages
internalError_reason=\u53d1\u751f\u5185\u90e8\u9519\u8bef\u3002\n\n\u8bf7\u5355\u51fb\u201c\u8be6\u7ec6\u4fe1\u606f\u201d\uff0c\u83b7\u53d6\u66f4\u591a\u4fe1\u606f\u3002
initializeWizardError_reason=\u5411\u5bfc\u672a\u6b63\u786e\u521d\u59cb\u5316\u3002
initializeWizardPagesError_reason=\u4e00\u4e2a\u6216\u591a\u4e2a\u5411\u5bfc\u9875\u9762\u672a\u6b63\u786e\u521d\u59cb\u5316\u3002
