Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 如何将多行文本文件转换为单行文本文件_Excel_Xml_Csv_File Conversion - Fatal编程技术网

Excel 如何将多行文本文件转换为单行文本文件

Excel 如何将多行文本文件转换为单行文本文件,excel,xml,csv,file-conversion,Excel,Xml,Csv,File Conversion,首先,我在网上和其他地方看过了,但我真的找不到我要找的东西 我有一个报警/访问控制系统,它将一行连续的xml作为配置文件。如果你在记事本这样的文本编辑器中打开它,就会有数百行。但是,事实上,这一切都在同一条线上,没有马车返回任何地方 现在,我想在一个有200多个用户的列表中添加用户,我在XML中找到了需要插入所有详细信息的位置。我有一个包含姓名、权限等的excel电子表格,我已经将其转换为CSV。现在,我需要删除文本中的每个回车符,然后再将其粘贴到配置文件中 我没有使用任何服务器类型的软件,C或

首先,我在网上和其他地方看过了,但我真的找不到我要找的东西

我有一个报警/访问控制系统,它将一行连续的xml作为配置文件。如果你在记事本这样的文本编辑器中打开它,就会有数百行。但是,事实上,这一切都在同一条线上,没有马车返回任何地方

现在,我想在一个有200多个用户的列表中添加用户,我在XML中找到了需要插入所有详细信息的位置。我有一个包含姓名、权限等的excel电子表格,我已经将其转换为CSV。现在,我需要删除文本中的每个回车符,然后再将其粘贴到配置文件中

我没有使用任何服务器类型的软件,C或Javascript或任何类似的。我只有Excel和记事本。我不介意用程序或工具解析CSV,但它必须从我的多行CSV中提供一个连续的单行输出

除了手动浏览文件并在每次回车时单击delete之外,还有其他方法吗

编辑

从记事本复制的XML的预期输出示例:

<user id="1"><name>Bevan</name><pin>xxxx</pin><tag>xxxxxxxx</tag><type><opt id="kbdortag">Keypad or Tag</opt></type><partns><pn id="1" /><pn id="2" /></partns><access><opt id="awarm" /><opt id="awdis" /><opt id="stdis" /><opt id="egrs" /><opt id="view" /></access><priv><opt id="own" /><opt id="otr" /><opt id="all" /><opt id="phn" /><opt id="clk" /><opt id="dtmf" /><opt id="lrn" /><opt id="cbk" /></priv><misc /><tzs /><kps><kp id="1" /><kp id="2" /><kp id="3" /><kp id="4" /><kp id="5" /><kp id="6" /><kp id="7" /><kp id="8" /><kp id="9" /><kp id="10" /><kp id="11" /><kp id="12" /><kp id="13" /><kp id="14" /><kp id="15" /><kp id="16" /><kp id="17" /><kp id="18" /><kp id="19" /><kp id="20" /><kp id="21" /><kp id="22" /><kp id="23" /><kp id="24" /><kp id="25" /><kp id="26" /><kp id="27" /><kp id="28" /><kp id="29" /><kp id="30" /><kp id="31" /><kp id="32" /></kps><opon><op id="1" /><op id="2" /><op id="3" /><op id="4" /><op id="5" /><op id="6" /><op id="7" /><op id="8" /><op id="9" /><op id="10" /><op id="11" /><op id="12" /><op id="13" /><op id="14" /><op id="15" /><op id="16" /><op id="17" /><op id="18" /><op id="19" /><op id="20" /><op id="21" /><op id="22" /><op id="23" /><op id="24" /><op id="25" /><op id="26" /><op id="27" /><op id="28" /><op id="29" /><op id="30" /><op id="31" /><op id="32" /></opon><opoff><op id="1" /><op id="2" /><op id="3" /><op id="4" /><op id="5" /><op id="6" /><op id="7" /><op id="8" /><op id="9" /><op id="10" /><op id="11" /><op id="12" /><op id="13" /><op id="14" /><op id="15" /><op id="16" /><op id="17" /><op id="18" /><op id="19" /><op id="20" /><op id="21" /><op id="22" /><op id="23" /><op id="24" /><op id="25" /><op id="26" /><op id="27" /><op id="28" /><op id="29" /><op id="30" /><op id="31" /><op id="32" /></opoff><usage>255</usage><startdate /><enddate /><starttime>0:00</starttime><endtime>23:59</endtime><tzd /><ag>1</ag></user><user id="2"><name>Fred Dagg</name><pin></pin><tag>xxxxxxxxx</tag><type><opt id="tag">Prox Tag</opt></type><partns><pn id="1" /><pn id="2" /></partns><access><opt id="awarm" /><opt id="awdis" /><opt id="stdis" /><opt id="egrs" /></access><priv /><misc /><tzs /><kps><kp id="1" /><kp id="2" /><kp id="3" /><kp id="4" /><kp id="5" /><kp id="6" /><kp id="7" /><kp id="8" /><kp id="9" /><kp id="10" /><kp id="11" /><kp id="12" /><kp id="13" /><kp id="14" /><kp id="15" /><kp id="16" /><kp id="17" /><kp id="18" /><kp id="19" /><kp id="20" /><kp id="21" /><kp id="22" /><kp id="23" /><kp id="24" /><kp id="25" /><kp id="26" /><kp id="27" /><kp id="28" /><kp id="29" /><kp id="30" /><kp id="31" /><kp id="32" /></kps><opon><op id="8" /><op id="11" /><op id="13" /><op id="14" /><op id="15" /><op id="16" /></opon><opoff><op id="13" /></opoff><usage>255</usage><startdate /><enddate /><starttime>0:00</starttime><endtime>0:00</endtime><tzd /><ag>0</ag></user>
如果我尝试用excel创建此文件,当然我的列会用完

从csv中,我得到:

<user id="1"><name>Bevan</name><pin>xxxx</pin><tag>xxxxxxxx</tag><type><opt id="kbdortag">Keypad or Tag</opt></type><partns><pn id="1" /><pn id="2" /></partns><access><opt id="awarm" /><opt id="awdis" /><opt id="stdis" /><opt id="egrs" /><opt id="view" /></access><priv><opt id="own" /><opt id="otr" /><opt id="all" /><opt id="phn" /><opt id="clk" /><opt id="dtmf" /><opt id="lrn" /><opt id="cbk" /></priv><misc /><tzs /><kps><kp id="1" /><kp id="2" /><kp id="3" /><kp id="4" /><kp id="5" /><kp id="6" /><kp id="7" /><kp id="8" /><kp id="9" /><kp id="10" /><kp id="11" /><kp id="12" /><kp id="13" /><kp id="14" /><kp id="15" /><kp id="16" /><kp id="17" /><kp id="18" /><kp id="19" /><kp id="20" /><kp id="21" /><kp id="22" /><kp id="23" /><kp id="24" /><kp id="25" /><kp id="26" /><kp id="27" /><kp id="28" /><kp id="29" /><kp id="30" /><kp id="31" /><kp id="32" /></kps><opon><op id="1" /><op id="2" /><op id="3" /><op id="4" /><op id="5" /><op id="6" /><op id="7" /><op id="8" /><op id="9" /><op id="10" /><op id="11" /><op id="12" /><op id="13" /><op id="14" /><op id="15" /><op id="16" /><op id="17" /><op id="18" /><op id="19" /><op id="20" /><op id="21" /><op id="22" /><op id="23" /><op id="24" /><op id="25" /><op id="26" /><op id="27" /><op id="28" /><op id="29" /><op id="30" /><op id="31" /><op id="32" /></opon><opoff><op id="1" /><op id="2" /><op id="3" /><op id="4" /><op id="5" /><op id="6" /><op id="7" /><op id="8" /><op id="9" /><op id="10" /><op id="11" /><op id="12" /><op id="13" /><op id="14" /><op id="15" /><op id="16" /><op id="17" /><op id="18" /><op id="19" /><op id="20" /><op id="21" /><op id="22" /><op id="23" /><op id="24" /><op id="25" /><op id="26" /><op id="27" /><op id="28" /><op id="29" /><op id="30" /><op id="31" /><op id="32" /></opoff><usage>255</usage><startdate /><enddate /><starttime>0:00</starttime><endtime>23:59</endtime><tzd /><ag>1</ag></user>
<user id="2"><name>Fred</name><pin></pin><tag>xxxxxxxxx</tag><type><opt id="tag">Prox Tag</opt></type><partns><pn id="1" /><pn id="2" /></partns><access><opt id="awarm" /><opt id="awdis" /><opt id="stdis" /><opt id="egrs" /></access><priv /><misc /><tzs /><kps><kp id="1" /><kp id="2" /><kp id="3" /><kp id="4" /><kp id="5" /><kp id="6" /><kp id="7" /><kp id="8" /><kp id="9" /><kp id="10" /><kp id="11" /><kp id="12" /><kp id="13" /><kp id="14" /><kp id="15" /><kp id="16" /><kp id="17" /><kp id="18" /><kp id="19" /><kp id="20" /><kp id="21" /><kp id="22" /><kp id="23" /><kp id="24" /><kp id="25" /><kp id="26" /><kp id="27" /><kp id="28" /><kp id="29" /><kp id="30" /><kp id="31" /><kp id="32" /></kps><opon><op id="8" /><op id="11" /><op id="13" /><op id="14" /><op id="15" /><op id="16" /></opon><opoff><op id="13" /></opoff><usage>255</usage><startdate /><enddate /><starttime>0:00</starttime><endtime>0:00</endtime><tzd /><ag>0</ag></user>

我需要把这两百行,做成一行。唷

使用查找和替换。alt-010和/或alt-012将找到换行符和回车符。请用空白或空格替换。

您可以发布一个数据示例吗?您得到的输入和预期的输出都会有帮助为什么不使用查找和替换?首先,您所谓的csv文件不是csv,而是纯文本文件。Excel附带了一种非常好的宏语言VBA,它实际上是一种功能几乎全的MS Visual Basic。我目前手头没有Excel,但使用Excel宏读取一个文本文件并写入另一个文本文件应该很容易。@Bevan,您的预期输出长度为2846个字符,但您的输入,与user1相关的字符为1894,与user2相关的字符为947。1894 + 947 = 2841. 预期输出和输入之间相差5个字符。应该是一样的,对吗?而且仅连接单元格不起作用?alt-010或alt-012或两者。数字需要在数字键盘上键入。