01: <cfcomponent>
02:
03: <!--- 区切り --->
04: <cfset variables.sep = "">
05:
06: <!--- ヌルの時の変換文字列 --->
07: <cfset variables.chgStr = "">
08:
09: <!--- 元データ --->
10: <cfset variables.motoData = "">
11:
12: <!--- 変換後データ --->
13: <cfset variables.convData = "">
14:
15: <!--- init --->
16: <cffunction name="init"
17: access="public"
18: type="csv2cflist"
19: output="no">
20:
21: <cfargument name="sep"
22: type="string"
23: required="yes">
24:
25: <cfargument name="chgStr"
26: type="string"
27: required="yes">
28:
29: <cfset variables.sep = arguments.sep>
30: <cfset variables.chgStr = arguments.chgStr>
31:
32: <cfreturn this>
33: </cffunction>
34:
35:
36: <!--- 変換 --->
37: <cffunction name="conv"
38: access="public"
39: type="void"
40: output="no">
41:
42: <cfargument name="data"
43: type="string"
44: required="yes">
45:
46: <cfset variables.motoData = arguments.data>
47: <cfset variables.convData = arguments.data>
48:
49: <cfif left(variables.convData,1) eq variables.sep>
50: <cfset variables.convData = variables.chgStr &
51: variables.convData>
52: </cfif>
53:
54: <cfloop condition =
55: "Find('#variables.sep##variables.sep#',
56: variables.convData) neq 0">
57:
58: <cfset variables.convData =
59: Replace(variables.convData,
60: "#variables.sep##variables.sep#",
61: "#variables.sep##variables.chgStr##variables.sep#",
62: "ALL")>
63: </cfloop>
64:
65: <cfif right(variables.convData,1) eq variables.sep>
66: <cfset variables.convData =
67: variables.convData &
68: variables.chgStr>
69: </cfif>
70: </cffunction>
71:
72:
73: <!--- 指定カラムのデータ取得 --->
74: <cffunction name="ListGetAtEx"
75: access="public"
76: type="string"
77: output="no">
78:
79: <cfargument name="no"
80: type="numeric"
81: required="yes">
82:
83: <cfset var tmp = "">
84: <cfset tmp = ListGetAt(variables.convData,
85: arguments.no,
86: variables.sep)>
87:
88: <cfif tmp eq variables.chgStr>
89: <cfreturn "">
90: </cfif>
91:
92: <cfreturn tmp>
93: </cffunction>
94:
95:
96: <!--- 元データ --->
97: <cffunction name="getMotoData"
98: access="public"
99: type="string"
00: output="no">
01:
02: <cfreturn variables.motoData>
03: </cffunction>
04:
05:
06: <!--- 変換データ --->
07: <cffunction name="getConvData"
08: access="public"
09: type="string"
10: output="no">
11:
12: <cfreturn variables.convData>
13: </cffunction>
14:
15: </cfcomponent>
16:
うたらぼさんの読者になろう
ブログの更新情報が受け取れて、アクセスが簡単になります