将相应的 大型对象LOB类型数据转为相应的CSV格式 返回 ,采用了piplined 的方式,也就是 运行出一条数据 就返回一条 ,不是全部都执行完了 再返回的形式 PL/SQL lob-to-csv piplined function clob_to_csv (p_csv_clob in clob, p_separator in varchar2 := g
将相应的 大型对象LOB类型数据转为相应的CSV格式 返回 ,采用了piplined 的方式,也就是 运行出一条数据 就返回一条 ,不是全部都执行完了 再返回的形式 PL/SQL lob-to-csv piplinedfunction clob_to_csv (p_csv_clob in clob, p_separator in varchar2 := g_default_separator, p_skip_rows in number := 0) return t_csv_tab pipelined as l_line_separator varchar2(2) := chr(13) || chr(10);--行的 分割符号 \r\n l_last pls_integer;--上一次的扫描位置 l_current pls_integer;--这一次的扫描位置 l_line varchar2(32000); l_line_number pls_integer := 0; l_from_line pls_integer := p_skip_rows + 1; l_line_array t_str_array; l_row t_csv_line := t_csv_line (null, null, -- line number, line raw null, null, null, null, null, null, null, null, null, null, -- lines 1-10 null, null, null, null, null, null, null, null, null, null); -- lines 11-20 begin /* Purpose: convert clob to CSV Remarks: based on code from http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:1352202934074 and http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:744825627183 Who Date Description ------ ---------- -------------------------------- MBR 31.03.2010 Created fartpig 07.03.2011 noted */ -- If the file has a DOS newline (cr+lf), use that: 如果文件时DOS的格式就是用 \r\n -- If the file does not have a DOS newline, use a Unix newline (lf) 如果不是就采用 unix标准 \n -- 通过检索 \r\n 是否存在 if (nvl(dbms_lob.instr(p_csv_clob, l_line_separator, 1, 1),0) = 0) then l_line_separator := chr(10); end if; l_last := 1;--设定上一次扫描位置为 1 loop --检索 当前分割符号的位置 --为了能够顺利的将文件读完 需要 将传入的 LOB结尾加上一个 分割符号 l_current := dbms_lob.instr (p_csv_clob || l_line_separator, l_line_separator, l_last, 1); --当 没有找到时候 退出 exit when (nvl(l_current,0) = 0); --递增 行号 l_line_number := l_line_number + 1; if l_from_line <= l_line_number then --通过 上一次的标记和这一次的标记 获得相应的 子值 --注意这里的参数 顺序和 instr不同 ,偏移量和长度 是反过来的 l_line := dbms_lob.substr(p_csv_clob || l_line_separator, l_current - l_last + 1, l_last); --l_line := replace(l_line, l_line_separator, ''); --将得到的 子值的 \r\n 替换掉 l_line := replace(l_line, chr(10), ''); l_line := replace(l_line, chr(13), ''); --调用相应的 csv to array API来处理 得到这个行 的结果数组 l_line_array := csv_to_array (l_line, p_separator); --将获得的值 进行那个封装到 记录中 通过pip row返回 l_row.line_number := l_line_number; l_row.line_raw := substr(l_line,1,4000); l_row.c001 := get_array_value (l_line_array, 1); l_row.c002 := get_array_value (l_line_array, 2); l_row.c003 := get_array_value (l_line_array, 3); l_row.c004 := get_array_value (l_line_array, 4); l_row.c005 := get_array_value (l_line_array, 5); l_row.c006 := get_array_value (l_line_array, 6); l_row.c007 := get_array_value (l_line_array, 7); l_row.c008 := get_array_value (l_line_array, 8); l_row.c009 := get_array_value (l_line_array, 9); l_row.c010 := get_array_value (l_line_array, 10); l_row.c011 := get_array_value (l_line_array, 11); l_row.c012 := get_array_value (l_line_array, 12); l_row.c013 := get_array_value (l_line_array, 13); l_row.c014 := get_array_value (l_line_array, 14); l_row.c015 := get_array_value (l_line_array, 15); l_row.c016 := get_array_value (l_line_array, 16); l_row.c017 := get_array_value (l_line_array, 17); l_row.c018 := get_array_value (l_line_array, 18); l_row.c019 := get_array_value (l_line_array, 19); l_row.c020 := get_array_value (l_line_array, 20); pipe row (l_row); end if; --将使用当前的扫描位置加上行的分割符号 来替换 上一次的扫描位置 l_last := l_current + length (l_line_separator); end loop; return; end clob_to_csv;

Laravel是业界比较出色的PHP框架之一,其强大的功能和易于使用的API使得其深受开发者的喜爱。在实际开发中,我们经常需要进行数据的导入和导出工作,而CSV作为一种广泛应用的数据格式,也成为了常用的导入和导出格式之一。本文就将介绍如何使用LaravelExcel扩展来进行CSV文件的导入和导出操作。一、安装LaravelExcel首先,我们需

php中json字符串转csv格式的方法:1、创建一个php示例文件;2、将JSON字符串转换为PHP数组或对象;3、创建一个文件句柄并打开一个CSV文件进行写入;4、在CSV文件中编写标题行和数据行;5、将数据行写入CSV文件,并在字段之间使用逗号分隔符,关闭文件句柄并完成转换即可。

这篇文章将为大家详细讲解有关PHP将行格式化为CSV并写入文件指针,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。将行格式化为CSV并写入文件指针步骤1:打开文件指针$file=fopen("path/to/file.csv","w");步骤2:将行转换为CSV字符串使用fputcsv()函数将行转换为CSV字符串。该函数接受以下参数:$file:文件指针$fields:作为数组的CSV字段$delimiter:字段分隔符(可选)$enclosure:字段引号(

php导入csv乱码问题的解决办法:1、构造一个解析函数“function tb_str_getcsv($string, $delimiter=',', $enclosure='"') {...}”;2、读取文件到变量;3、通过“substr($s,2)”去掉BOM头即可。

Python中的XML数据转换为CSV格式XML(ExtensibleMarkupLanguage)是一种可扩展标记语言,常用于数据的存储和传输。而CSV(CommaSeparatedValues)则是一种以逗号分隔的文本文件格式,常用于数据的导入和导出。在处理数据时,有时需要将XML数据转换为CSV格式以便于分析和处理。Python作为一种功能强大

Java是一种广泛使用的编程语言,开发者们常常需要处理各种数据格式。CSV(Comma-SeparatedValues,逗号分隔值)是一种常见的数据格式,广泛应用于数据交换和存储。在Java中,我们可以使用OpenCSV库来读写CSV文件。OpenCSV是一个简单易用的开源库,提供了方便的API来处理CSV数据。本文将介绍如何在

概述主要知识点a.SwingNode类:把Javaswing组件封装成一个JavaFX的Node,使得JavaSwing可以和JavaFX嵌套在一起使用,JavaSwing贼丑,但操作简单,JavaFX的表格组件(TableView等)有点复杂,所以选择嵌套JavaSwing来使用,丑就丑吧b.javacsv-2.0.jar:用于通过文件地址读取csv文件,并可以进行一系列操作.尽管2008年之后就不再更新,但操作个csv文件也够用了。c.FileChoose类:JavaFX的一个文件选择器,可

csv通过打开CSV文件、格式化CSV文件、导出CSV文件、调整VCF文件格式和保存VCF文件的步骤转vcf。详细介绍:1、打开CSV文件,可以使用Microsoft Excel、Google Sheets或任何其他电子表格程序打开CSV文件;2、格式化CSV文件,确保CSV文件的列标题清晰明确;3、导出CSV文件等等。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)