2.87 FAQ-870 如何将不含扩展名的文件名称提取到注释列?

Last Update: 4/24/2019

在 Origin 2017 SR2 及更高的版本中

从 Origin 2017 SR2 开始,可以通过勾选任意导入工具中的 (Re)naming Worksheet and Workbook 分支下 Append Filename to Column Comment 处的勾以及去掉 Include File Path when Appending Filename 处的勾,就可以将文件名提取到列注释中,且不包含扩展名。

Qh870 1.png
注意:如果要想在注释列中导入文件名时包含扩展名,可以使用 Set System Variables 对话框来实现。选择 Preferences: System Variables 打开对话框,将 IFE 变量值设为 0

在 Origin 2017 SR1 及其之前的版本中

在老版本的 Origin 中,当勾选了 "Append File name to Column Comments" 时,导入的文件名默认包含了扩展名。所以需要通过 Import Wizard 导入数据,在操作过程中可以在工作簿中创建一个新的参数来定义不含有扩展名的文件名称,然后从此参数行复制文件名称至注释列。

  1. 选择 Data: Import from File: Import Wizard
  2. Data Source 下选择数据,并在 Import Mode 中选择期望的导入模式,然后点击 Next
  3. 根据需要在 Header Lines 页面中自定义表头行,然后点击 Next
  4. Extract variables from file names and file headers 中勾选 Specify location of variable names and values using delimiters 前面的复选框,并勾选 Create User Parameter rows for each variable,如下图所示,然后点击 Next
    Qh870 2.png
  5. 在如下所示的页面中,顶部的白色框中将列出含有以及不含有扩展名的文件名称。在 Variable 选择想要添加的行。选择 Enter variable name 并定义相关名称。点击 Add 按钮。这将在灰色框中指定新变量。点击 Next
    Qh870 3.png
  6. 根据提示自定义数据列以及设置跳过列。点击 Next 将看到保存筛选器页面。
  7. Save filters 页面下,可以保存导入向导中的这些设置以便在以后导入文件时不需要重复进行这一设置。勾选 Filter Description 下的 Save filter 复选框以对筛选器进行命名。
  8. 为了将新参数中每一列的文件名称放入复制行中,勾选 Specify advanced filters options 前的复选框,然后点击 Next
  9. Script after All Files Imported 下面的白色框中输入以下脚本,然后点击 Finish。请注意,脚本中的 fname 时我们之前问新参数所创建的变量名。
//The goal of this loop is to 1) place all the columns in fname row into the comments row and to 2) hide fname row
loop (j,1,wks.ncols)
{
wcol(j)[C]$ =wcol(j)[fname]$; //places fname into comments
}
wks.UserParam1=0; //hides fname row in the workbook


若要在此使用此筛选器 (filter) 设置,在选择 Import Wizard 时必须先选择 Import filter 下面的 List filters applicable to both Data Type and file name ,然后从 Import Filters to the current Data Type 下拉菜单中选择想要使用的筛选器 (filter) 。

如果不执行步骤 8 和 9,文件名将导入到新的参数行中。在绘图时,图例会自动选择注释列的内容。若要使用文件名作为图例,则需要按如下两种方法之一进行设置:

或者


Keywords:extract file name, trim file extension,提取文件名,移除文件扩展名