清华大佬耗费三个月吐血整理的几百G的资源,免费分享!....>>>
--获得解析文件路径 :传入路径,文件名,操作系统标识 w,u
function resolve_filename (p_dir in varchar2,
p_file_name in varchar2,
p_os in varchar2 := g_os_windows) return varchar2
as
l_returnvalue t_file_name;
begin
/*
Purpose: resolve filename, ie. properly concatenate dir and filename
Remarks:
Who Date Description
------ ---------- --------------------------------
MBR 01.01.2005 Created
*/
--如果是 是 windows
if lower(p_os) = g_os_windows then
--如果最后一位字符时 \
if substr(p_dir,-1) = g_dir_sep_win then
--设定返回值为 路径+文件名称
l_returnvalue:=p_dir || p_file_name;
else
--如果没有 \ 则自己加一个上去
if p_dir is not null then
l_returnvalue:=p_dir || g_dir_sep_win || p_file_name;
else
l_returnvalue:=p_file_name;
end if;
end if;
--如果是unix 就为 / 思路和上面一致
elsif lower(p_os) = g_os_unix then
if substr(p_dir,-1) = g_dir_sep_unix then
l_returnvalue:=p_dir || p_file_name;
else
if p_dir is not null then
l_returnvalue:=p_dir || g_dir_sep_unix || p_file_name;
else
l_returnvalue:=p_file_name;
end if;
end if;
--如果都不是 就无返回值
else
l_returnvalue:=null;
end if;
return l_returnvalue;
END resolve_filename;