OSDN Git Service

修正内容(buildフォルダ)
[ring-lang-081/ring.git] / docs / ja-jp / source / stdlib.txt
1 .. index:: 
2         single: Stdlib 関数; はじめに
3
4 ===========
5 Stdlib 関数
6 ===========
7
8 stdlib.ring 関数の用法を学びます。
9
10 この関数の使用前に stdlib.ring ライブラリを読み込みます。
11
12 .. code-block:: ring
13
14         load "stdlib.ring"
15
16 stdlibcore.ring (StdLib 関数) も使えます (クラスはありません)。
17
18 stdlib.ring (関数とクラス) は RingLibCurl, RingOpenSSL などのライブラリを読み込むため、スタンドアローン型のコンソールアプリケーションの作成時は好都合です。
19
20 .. index:: 
21         pair: Stdlib 関数; puts()
22
23 Puts() 関数
24 ===========
25
26 値を表示後に改行 (nl) を表示します。
27
28 文法:
29
30 .. code-block:: ring
31
32         puts(式)
33
34 用例:
35
36 .. code-block:: ring
37
38         Load "stdlib.ring"
39
40         Puts("Hello, World!")
41
42 .. index:: 
43         pair: Stdlib 関数; print()
44
45 Print() 関数
46 ============
47
48 文字列の表示 - \\n, \\t および \\r に対応しています。
49
50 #{変数名} で変数の値を挿入します。
51
52 文法:
53
54 .. code-block:: ring
55
56         print(文字列) ---> 文字列
57
58 用例:
59
60 .. code-block:: ring
61
62         print("\nHello, World\n\nHow are you? \t\t I'm fine!\n")
63         x=10 y=20
64         print("\nx value = #{x} , y value = #{y} \n")
65
66
67 .. index:: 
68         pair: Stdlib 関数; Print2Str() 関数
69
70 Print2Str() 関数
71 ================
72
73 文法:
74
75 .. code-block:: ring
76
77         print2Str(文字列) ---> 文字列
78
79
80 用例:
81
82 .. code-block:: ring
83
84         world = "World!"
85         mystring = print2str("Hello, #{world} \nIn Year \n#{2000+17} \n")
86
87         see mystring + nl
88
89 実行結果:
90
91 .. code-block:: ring
92
93         Hello, World!
94         In Year
95         2017
96
97
98 .. index:: 
99         pair: Stdlib 関数; getstring()
100
101 GetString() 関数
102 ================
103
104 キーボードからの標準入力を取得します。 - 返値は文字列です。
105
106 .. code-block:: ring
107
108         getstring() ---> 文字列
109
110
111 .. index:: 
112         pair: Stdlib 関数; getnumber()
113
114 GetNumber() 関数
115 ================
116
117 キーボードからの標準入力を取得します。 - 返値は数値です。
118
119 .. code-block:: ring
120
121         getnumber() ---> 数値
122
123 .. index:: 
124         pair: Stdlib 関数; apppath()
125
126 AppPath() 関数
127 ==============
128
129 アプリケーションフォルダのパスを取得します。
130
131 文法:
132
133 .. code-block:: ring
134
135         AppPath() ---> パスの文字列
136
137 用例:
138
139 .. code-block:: ring
140
141         Load "stdlib.ring"
142
143         # アプリケーションのパス
144         Puts("Test AppPath()")
145         See AppPath() + nl
146
147 .. index:: 
148         pair: Stdlib 関数; JustFilePath()
149
150 JustFilePath() 関数
151 ===================
152
153 ファイル名を除去したファイルパスを返します。
154
155 文法:
156
157 .. code-block:: ring
158
159         JustFilePath(cFile) ---> 文字列はパスです。
160
161 用例:
162
163 .. code-block:: ring
164
165         load "stdlib.ring"
166  
167         see  justfilePath("b:\ring\applications\rnote\rnote.ring")
168
169 実行結果:
170
171 .. code-block:: ring
172
173         b:\ring\applications\rnote\
174
175
176 .. index:: 
177         pair: Stdlib 関数; JustFileName()
178
179 JustFileName() 関数
180 ===================
181
182 ファイルパスを除去したファイル名を返します。 
183
184 文法:
185
186 .. code-block:: ring
187
188         JustFileName(cFile) ---> 文字列はファイル名です。
189
190 用例:
191
192 .. code-block:: ring
193
194         load "stdlib.ring"
195  
196         see justfileName("b:\ring\applications\rnote\rnote.ring") 
197
198 実行結果:
199
200 .. code-block:: ring
201
202         rnote.ring
203
204
205 .. index:: 
206         pair: Stdlib 関数; value()
207
208 Value() 関数
209 ============
210
211 リストまたはオブジェクトからコピーを作成します。
212
213 文法:
214
215 .. code-block:: ring
216
217         value(リスト) ---> 新しいリスト
218
219 用例:
220
221 .. code-block:: ring
222
223         Load "stdlib.ring"
224
225         aList = 1:10
226         del(value(aList), 1) # 最初のリストを削除
227         see aList            # 1 ~ 10 までの数値を表示します。
228
229 .. index:: 
230         pair: Stdlib 関数; times()
231
232 Times() 関数
233 ============
234
235 関数を nCount 回実行します。
236
237 文法:
238
239 .. code-block:: ring
240
241         Times(nCount, 関数)
242
243 用例:
244
245 .. code-block:: ring
246
247         Load "stdlib.ring"
248
249         Puts("Test Times()")
250         Times ( 3 , func { see "Hello, World!" + nl } )
251
252 .. index:: 
253         pair: Stdlib 関数; map()
254
255 Map() 関数
256 ==========
257
258 リストの項目ごとに関数を実行します。
259
260 文法:
261
262 .. code-block:: ring
263
264          Map(alist,function) ---> リスト
265
266 用例:
267
268 .. code-block:: ring
269
270         Load "stdlib.ring"
271
272         Puts("Test Map()")
273         See Map( 1:10, func x { return x*x } )
274
275 .. index:: 
276         pair: Stdlib 関数; filter()
277
278 Filter() 関数
279 =============
280
281 項目を篩い分けるために各リストの項目へ関数を実行します。
282
283 文法:
284
285 .. code-block:: ring
286
287         Filter(alist,function) ---> リスト
288
289 用例:
290
291 .. code-block:: ring
292
293         Load "stdlib.ring"
294
295         Puts("Test Filter()")
296         See Filter( 1:10 , func x { if x <= 5 return true else return false ok } )
297
298 .. index:: 
299         pair: Stdlib 関数; split()
300
301 Split() 関数
302 ============
303
304 文字列の語からリスト項目へ変換します。
305
306 文法:
307
308 .. code-block:: ring
309
310         Split(cstring, 区切り文字) ---> リスト
311
312 用例:
313
314 .. code-block:: ring
315
316         Load "stdlib.ring"
317
318         Puts("Test Split()")
319         See Split("one two three four five"," ")
320
321
322 .. index:: 
323         pair: Stdlib 関数; splitmany()
324
325 SplitMany() 関数
326 ================
327
328 文字列の語からリスト項目へ変換します。いろいろな区切り文字を使うことができます。
329
330 文法:
331
332 .. code-block:: ring
333
334         SplitMany(cstring, 文字列またはリスト形式による区切り文字) --> リスト
335
336 用例:
337
338 .. code-block:: ring
339
340         Load "stdlib.ring"
341
342         Puts("Test SplitMany()")
343         See SplitMany("one,two,three,four and five"," ,")
344
345
346 .. index:: 
347         pair: Stdlib 関数; newlist()
348
349 NewList() 関数
350 ==============
351
352 二次元リストの作成
353
354
355 文法:
356
357 .. code-block:: ring
358
359         NewList(nRows, nColumns) ---> 新しいリスト
360
361 用例:
362
363 .. code-block:: ring
364
365         Load "stdlib.ring"
366
367         Puts("Test Newlist()")
368         a1 = 3
369         a2 = 5
370         chrArray = newlist(a1,a2)
371         numArray = newlist(a1,a2)
372         chrArray[1][1] = "Hello"
373         numArray[1][1]  = 987.2
374         See chrArray[1][1] + nl
375         See numArray[1][1] + nl
376
377 .. index:: 
378         pair: Stdlib 関数; capitalized()
379
380 Capitalized() 関数
381 ==================
382
383 一文字目を大文字へ変換した文字列のコピーを返します。
384
385 文法:
386
387 .. code-block:: ring
388
389         Capitalized(文字列) ---> 文字列
390
391 用例:
392
393 .. code-block:: ring
394
395         Load "stdlib.ring"
396
397         Puts("Test Capitalized()")
398         See capitalized("welcome to the Ring Programming Language")
399
400 .. index:: 
401         pair: Stdlib 関数; isspecial()
402
403 IsSpecial() 関数
404 ================
405
406 文字が特殊文字であるかどうかを確認します。
407
408
409 文法:
410
411 .. code-block:: ring
412
413         IsSpecial(char) ---> True/False
414
415 用例:
416
417 .. code-block:: ring
418
419         Load "stdlib.ring"
420
421         Puts("Test Isspecial()")
422         See "Isspecial  = " + isSpecial("%") + nl
423
424 .. index:: 
425         pair: Stdlib 関数; isvowel()
426
427 IsVowel() 関数
428 ==============
429
430 文字が母音であるかどうかを確認します。
431
432 文法:
433
434 .. code-block:: ring
435
436         IsVowel(char) ---> True/False
437
438 用例:
439
440 .. code-block:: ring
441
442         Load "stdlib.ring"
443
444         Puts("Test Isvowel()")
445         See "Isvowel = " + isVowel("c") + nl
446
447
448 .. index:: 
449         pair: Stdlib 関数; linecount()
450
451 LineCount() 関数
452 ================
453
454 テキストファイルの行数を返します。
455
456 文法:
457
458 .. code-block:: ring
459
460         LineCount(cFileName) ---> 行数
461
462 用例:
463
464 .. code-block:: ring
465
466         Load "stdlib.ring"
467
468         Puts("Test Linecount()")
469         See "the number of lines = " + lineCount("test.ring")
470
471 .. index:: 
472         pair: Stdlib 関数; factorial()
473
474 Factorial() 関数
475 ================
476
477 累乗数を返します。
478
479 文法:
480
481 .. code-block:: ring
482
483         Factorial(number) ---> 数値
484
485 用例:
486
487 .. code-block:: ring
488
489         Load "stdlib.ring"
490
491         Puts("Test Factorial()")
492         see "6 factorial is : " + Factorial(6)
493
494 .. index:: 
495         pair: Stdlib 関数; fibonacci()
496
497 Fibonacci() 関数
498 ================
499
500 フィボナッチ数を返します。
501
502 文法:
503
504 .. code-block:: ring
505
506         Fibonacci(number) ---> 数値
507
508 用例:
509
510 .. code-block:: ring
511
512         Load "stdlib.ring"
513
514         Puts("Test Fibonacci()")
515         see "6 Fibonacci is : " + Fibonacci(6)
516
517 .. index:: 
518         pair: Stdlib 関数; isprime()
519
520 IsPrime() 関数
521 ==============
522
523 数値が素数であるかどうかを返します。
524
525 文法:
526
527 .. code-block:: ring
528
529         isprime(number) ---> 数値
530
531 用例:
532
533 .. code-block:: ring
534
535         Load "stdlib.ring"
536
537         Puts("Test Isprime()")
538         if isPrime(16) see "16 is a prime number"
539         else see "16 is not a prime number" ok
540
541 .. index:: 
542         pair: Stdlib 関数; sign()
543
544 Sign() 関数
545 ===========
546
547 数値の符号を示した整数の値を返します。
548
549 文法:
550
551 .. code-block:: ring
552
553         Sign(number) ---> 数値 ( -1 = 負数 , 0 , 1 (整数) )
554
555 用例:
556
557 .. code-block:: ring
558
559         Load "stdlib.ring"
560
561         Puts("Test Sign()")
562         see "sign of 12 is = " + sign(12) + nl
563
564 .. index:: 
565         pair: Stdlib 関数; list2file()
566
567 List2File() 関数
568 ================
569
570 リスト項目をテキストファイルへ書き出します (項目ごとに改行されます)。
571
572 文法:
573
574 .. code-block:: ring
575
576         List2File(aList, cFileName)
577
578 用例:
579
580 .. code-block:: ring
581
582         Load "stdlib.ring"
583
584         # List2File のテスト
585         Puts("Test List2File()")
586         list2file(1:100,"myfile.txt")
587
588
589 .. index:: 
590         pair: Stdlib 関数; file2list()
591
592 File2List() 関数
593 ================
594
595 テキストファイルを読み取って行をリスト項目へ変換します。
596
597 文法:
598
599 .. code-block:: ring
600
601         File2List(cFileName) ---> リスト
602
603 用例:
604
605 .. code-block:: ring
606
607         Load "stdlib.ring"
608
609         # File2List のテスト
610         Puts("Test File2List()")
611         see len(file2list("myfile.txt"))
612
613 .. index:: 
614         pair: Stdlib 関数; startswith()
615
616 StartsWith() 関数
617 =================
618
619 指定された文字列が指定された部分文字列で始まるならば true を返します。
620
621 先頭の空白文字は無視されます。
622
623 文法:
624
625 .. code-block:: ring
626
627         StartsWith(string, substring) ---> True/False
628
629
630 用例:
631
632 .. code-block:: ring
633
634         Load "stdlib.ring"
635
636         Puts("Test Startswith()")
637         see Startswith("CalmoSoft", "Calmo") + nl
638
639 .. index:: 
640         pair: Stdlib 関数; endswith()
641
642 EndsWith() 関数
643 ===============
644
645 指定された文字列が指定された部分文字列で終わるならば true を返します。
646
647 末尾の空白文字は無視されます。
648
649 文法:
650
651 .. code-block:: ring
652
653         Endswith(string, substring) ---> True/False
654
655 用例:
656
657 .. code-block:: ring
658
659         Load "stdlib.ring"
660
661         Puts("Test Endswith()")
662         see endsWith("CalmoSoft", "Soft") + nl
663
664 .. index:: 
665         pair: Stdlib 関数; gcd()
666
667 GCD() 関数
668 ==========
669
670 整数の最大公約数 (Greatest Common Divisor) を計算します。
671
672 文法:
673
674 .. code-block:: ring
675
676         Gcd(number,number) ---> 数値
677
678 用例:
679
680 .. code-block:: ring
681
682         Load "stdlib.ring"
683
684         Puts("Test Gcd()")
685         see gcd (24, 32) + nl
686
687
688 .. index:: 
689         pair: Stdlib 関数; lcm()
690
691 LCM() 関数
692 ==========
693
694 整数の最小公約数 (Least Common Multiple) を計算します。
695
696 文法:
697
698 .. code-block:: ring
699
700         lcm(number,number) ---> 数値
701
702 用例:
703
704 .. code-block:: ring
705
706         Load "stdlib.ring"
707
708         Puts("Test Lcm()")
709         see Lcm(24,36) + nl
710
711 .. index:: 
712         pair: Stdlib 関数; sumlist()
713
714 SumList() 関数
715 ==============
716
717 整数のリストにおける総和を計算します。
718
719 文法:
720
721 .. code-block:: ring
722
723         sumlist(リスト) ---> 数値
724
725 用例:
726
727 .. code-block:: ring
728
729         Load "stdlib.ring"
730
731         Puts("Test Sumlist()")
732         aList = [1,2,3,4,5]
733         see Sumlist(aList) + nl
734
735 .. index:: 
736         pair: Stdlib 関数; prodlist()
737
738 ProdList() 関数
739 ===============
740
741 整数リストの積を計算します。
742
743 文法:
744
745 .. code-block:: ring
746
747         prodlist(リスト) ---> 数値
748
749 用例:
750
751 .. code-block:: ring
752
753         Load "stdlib.ring"
754
755         Puts("Test Prodlist()")
756         aList = [1,2,3,4,5]
757         see Prodlist(aList) + nl
758
759 .. index:: 
760         pair: Stdlib 関数; evenorodd()
761
762 EvenOrOdd() 関数
763 ================
764
765 整数が奇数か偶数かどうかテストします。
766
767 テストの結果は (1 = 奇数、2 = 偶数) です。
768
769 文法:
770
771 .. code-block:: ring
772
773         evenorodd(number) ---> 1 (奇数) または 2 (偶数)
774
775 用例:
776
777 .. code-block:: ring
778
779         Load "stdlib.ring"
780
781         Puts("Test Evenorodd()")
782         nr = 17
783         see Evenorodd(nr) + nl
784
785 .. index:: 
786         pair: Stdlib 関数; factors()
787
788 Factors() 関数
789 ==============
790
791 整数の素因数分解を計算をします。
792
793 文法:
794
795 .. code-block:: ring
796
797         factors(number) ---> リスト
798
799 用例:
800
801 .. code-block:: ring
802
803         Load "stdlib.ring"
804
805         Puts("Test Factors()")
806         n = 45
807         aList = factors(n)
808         see "Factors of " + n + " = "
809         for i = 1 to len(aList)
810             see "" + aList[i] + " "
811         next
812
813
814 .. index:: 
815         pair: Stdlib 関数; ispalindrome()
816
817 IsPalindrome() 関数
818 ===================
819
820 文字列が回文であるかどうか確認します。
821
822 文法:
823
824 .. code-block:: ring
825
826         IsPalindrome(String) ---> True/False
827
828 用例:
829
830 .. code-block:: ring
831
832         Load "stdlib.ring"
833
834         Puts("Test IsPalindrome()")
835         cString = "radar"
836         see IsPalindrome(cString)
837
838
839 .. note:: Ring 1.9 以前は Palindrome() 関数として使用可能でした。
840
841 .. index:: 
842         pair: Stdlib 関数; isleapyear()
843
844 IsLeapYear() 関数
845 =================
846
847 指定された年がグレコリオ暦における閏年であるかどうか確認します。
848
849 文法:
850
851 .. code-block:: ring
852
853         Isleapyear(number) ---> True/False
854
855 用例:
856
857 .. code-block:: ring
858
859         Load "stdlib.ring"
860
861         Puts("Test Isleapyear()")
862         year = 2016
863         if Isleapyear(year) see "" + year + " is a leap year."
864         else see "" + year + " is not a leap year." ok
865
866
867 .. index:: 
868         pair: Stdlib 関数; binarydigits()
869
870 BinaryDigits() 関数
871 =======================
872
873 非負整数値を指定することで二進数配列の計算をします。
874
875 文法:
876
877 .. code-block:: ring
878
879         binarydigits(number) ---> 文字列
880
881 用例:
882
883 .. code-block:: ring
884
885         Load "stdlib.ring"
886
887         Puts("Test Binarydigits()")
888         b = 35
889         see "Binary digits of " + b + " = " + Binarydigits(b)
890
891 .. index:: 
892         pair: Stdlib 関数; matrixmulti()
893
894 MatrixMulti() 関数
895 ======================
896
897 行列を掛け合わせます。
898
899 文法:
900
901 .. code-block:: ring
902
903         Matrixmulti(List,List) ---> リスト
904
905 用例:
906
907 .. code-block:: ring
908
909         Load "stdlib.ring"
910
911         # 行列を掛け合わせます。
912         Puts("Test Matrixmulti()")
913         A = [[1,2,3], [4,5,6], [7,8,9]]
914         B = [[1,0,0], [0,1,0], [0,0,1]]
915         see Matrixmulti(A, B)
916
917
918 .. index:: 
919         pair: Stdlib 関数; matrixtrans()
920
921 MatrixTrans() 関数
922 ======================
923
924 サイズ指定による矩形行列の変換を行います。
925
926 文法:
927
928 .. code-block:: ring
929
930         Matrixtrans(リスト) ---> リスト
931
932 用例:
933
934 .. code-block:: ring
935
936         Load "stdlib.ring"
937
938         # サイズ指定による矩形行列の変換を行います。
939         Puts("Test Matrixtrans()")
940         matrix = [[78,19,30,12,36], [49,10,65,42,50], [30,93,24,78,10], [39,68,27,64,29]]
941         see Matrixtrans(matrix)
942
943 .. index:: 
944         pair: Stdlib 関数; dayofweek()
945
946 DayOfWeek() 関数
947 ====================
948
949 指定された日付 (西暦四桁-月-日) における曜日を返します。
950
951 文法:
952
953 .. code-block:: ring
954
955         dayofweek(文字列) ---> 文字列
956
957 用例:
958
959 .. code-block:: ring
960
961         Load "stdlib.ring"
962
963         # 指定された日付における曜日を返します。
964         Puts("Test Dayofweek()")
965         date = "2016-04-24"
966         see "Data : " + date + " - Day : " + Dayofweek(date) + nl
967
968 .. index:: 
969         pair: Stdlib 関数; permutation()
970
971 Permutation() 関数
972 ==================
973
974 n 個の異なる数値における配列を全て生成します。
975
976 文法:
977
978 .. code-block:: ring
979
980         permutation(リスト)
981
982 用例:
983
984 .. code-block:: ring
985
986         Load "stdlib.ring"
987
988         # n 個の異なる数値における配列を全て生成します。
989         Puts("Test Permutation()")
990         list = [1, 2, 3, 4]
991         for perm = 1 to 24
992                 for i = 1 to len(list)
993                         see list[i] + " "
994                 next
995                 see nl
996                 Permutation(list)
997         next
998
999 .. index:: 
1000         pair: Stdlib 関数; readline()
1001
1002 ReadLine() 関数
1003 ===============
1004
1005 ファイルから一行読み取ります。
1006
1007 文法:
1008
1009 .. code-block:: ring
1010
1011         readline(fp) ---> 文字列
1012
1013 用例:
1014
1015 .. code-block:: ring
1016
1017         Load "stdlib.ring"
1018
1019         # ファイルから一行ずつ読み取ります。
1020         Puts("Test Readline()")
1021         fp = fopen("test.ring","r")
1022         while not feof(fp)
1023         See Readline(fp) end
1024         fclose(fp)
1025
1026 .. index:: 
1027         pair: Stdlib 関数; substring()
1028
1029 SubString() 関数
1030 ================
1031
1032 文字列の指定位置を始点とした部分文字の位置を返します。
1033
1034 文法:
1035
1036 .. code-block:: ring
1037
1038         Substring(str,substr,npos) ---> 文字列
1039
1040 用例:
1041
1042 .. code-block:: ring
1043
1044         Load "stdlib.ring"
1045
1046         # 文字列の指定位置を始点とした部分文字の位置を返します。
1047         Puts("Test Substring()")
1048         a = "abcxyzqweabc"
1049         b = "abc"
1050         i = 4
1051         see substring(a,b,i)
1052
1053 .. index:: 
1054         pair: Stdlib 関数; changestring()
1055
1056 ChangeString() 関数
1057 ===================
1058
1059 部分文字列を指定位置から別の部分文字の指定位置へ変更します。
1060
1061 文法:
1062
1063 .. code-block:: ring
1064
1065         Changestring(cString, nPos1, nPos2, cSubstr) ---> cString
1066
1067 用例:
1068
1069 .. code-block:: ring
1070
1071         Load "stdlib.ring"
1072
1073         # 部分文字列を指定位置から別の部分文字の指定位置へ変更します。
1074         Puts("Test Changestring()")
1075         see Changestring("Rmasdg",2,5,"in")     # Ring
1076
1077 .. index:: 
1078         pair: Stdlib 関数; sleep()
1079
1080 Sleep() 関数
1081 ============
1082
1083 指定された秒数まで休止します。
1084
1085 文法:
1086
1087 .. code-block:: ring
1088
1089         sleep(nSeconds) 
1090
1091 用例:
1092
1093 .. code-block:: ring
1094
1095         Load "stdlib.ring"
1096
1097         Puts("Test Sleep()")
1098         see "Wait 3 Seconds!"
1099         Sleep(3)
1100         see nl
1101
1102 .. index:: 
1103         pair: Stdlib 関数; ismainsourcefile()
1104
1105 IsMainSourceFile() 関数
1106 =======================
1107
1108 現在のファイルがメインソースファイルであるかどうか確認します。
1109
1110 文法:
1111
1112 .. code-block:: ring
1113
1114         IsMainSourceFile() ---> True/False
1115
1116 用例:
1117
1118 .. code-block:: ring
1119
1120         Load "stdlib.ring"
1121
1122         if ismainsourcefile()
1123                 # コード
1124         ok
1125
1126 .. index:: 
1127         pair: Stdlib 関数; direxists()
1128
1129 DirExists() 関数
1130 ================
1131
1132 ディレクトリが存在するかどうか確認します。
1133
1134 文法:
1135
1136 .. code-block:: ring
1137
1138         DirExists(文字列) ---> True/False
1139
1140 用例:
1141
1142 .. code-block:: ring
1143
1144         Load "stdlib.ring"
1145
1146         see "Check dir : b:\ring " 
1147         puts( DirExists("b:\ring") )
1148         see "Check dir : C:\ring " 
1149         Puts( DirExists("C:\ring") )
1150
1151 .. index:: 
1152         pair: Stdlib 関数; makedir()
1153
1154 MakeDir() 関数
1155 ==============
1156
1157 ディレクトリを作成します。
1158
1159 文法:
1160
1161 .. code-block:: ring
1162
1163         MakeDir(文字列)
1164
1165 用例:
1166
1167 .. code-block:: ring
1168
1169         Load "stdlib.ring"
1170
1171         # ディレクトリの作成
1172         puts("create Directory : myfolder")
1173         makedir("myfolder")
1174
1175
1176 .. index:: 
1177         pair: Stdlib 関数; FSize()
1178
1179 Fsize() 関数
1180 ============
1181
1182 ファイルサイズをバイト単位で返します。
1183
1184 文法:
1185
1186 .. code-block:: ring
1187
1188         FSize(ファイルのハンドル) ---> 数値  (バイト単位によるファイルサイズ)
1189
1190 .. index:: 
1191         pair: Stdlib 関数; TrimAll()
1192
1193 TrimAll() 関数
1194 ==============
1195
1196 文字列から空白とタブ文字を全て除去します。
1197
1198 文法:
1199
1200 .. code-block:: ring
1201
1202         TrimAll(cString) ---> cString # 空白とタブを除去します。
1203
1204 .. index:: 
1205         pair: Stdlib 関数; TrimLeft()
1206
1207 TrimLeft() 関数
1208 ===============
1209
1210 文字列の左側にある空白とタブ文字を全て除去します。 
1211
1212 文法:
1213
1214 .. code-block:: ring
1215
1216         TrimLeft(cString) ---> cString # 左側から空白とタブを除去します。
1217
1218 .. index:: 
1219         pair: Stdlib 関数; TrimRight()
1220
1221 TrimRight() 関数
1222 ================
1223
1224 文字列の右側にある空白とタブ文字を全て除去します。
1225
1226 文法:
1227
1228 .. code-block:: ring
1229
1230         TrimRight(cString) ---> cString # 右側から空白とタブを除去します。
1231
1232 .. index:: 
1233         pair: Stdlib 関数; EpochTime()
1234
1235 EpochTime() 関数
1236 ================
1237
1238 エポック時間を返します。
1239
1240 文法:
1241
1242 .. code-block:: ring
1243
1244         EpochTime(cDate,cTime) ---> エポック時間
1245
1246 用例:
1247
1248 .. code-block:: ring
1249
1250         see EpochTime( Date(), Time() )
1251
1252 .. index:: 
1253         pair: Stdlib 関数; SystemCmd() 関数
1254
1255 SystemCmd() 関数
1256 ================
1257
1258 SystemCmd() 関数は変数を出力してシステムコマンドを実行します。
1259
1260 文法:
1261
1262 .. code-block:: ring
1263
1264         SystemCmd(cCommand)
1265
1266 用例:
1267
1268 .. code-block:: ring
1269
1270         cYou  = SystemCmd("whoami")        # 記録されたユーザ名は変数へ出力されます。
1271         cThem = SystemCmd("dir c:\Users")  # ディレクトリのリストは変数へ出力されます。
1272
1273
1274 .. index:: 
1275         pair: Stdlib 関数; ListAllFiles() 関数
1276
1277 ListAllFiles() 関数
1278 ===================
1279
1280 ListAllFiles() 関数でフォルダにあるファイルのグループ、およびそのサブフォルダを手軽に処理できます。
1281
1282 文法:
1283
1284 .. code-block:: ring
1285
1286         ListAllFiles(cFolder,cExtension) ---> ファイルのリスト
1287
1288 用例:
1289
1290 .. code-block:: ring
1291
1292         aList = ListAllFiles("c:/ring/ringlibs","ring") # *.ring のみ
1293         aList = sort(aList)
1294         see aList
1295
1296 用例:
1297
1298 .. code-block:: ring
1299
1300         see listallfiles("b:/ring/ringlibs/weblib","") # 全てのファイル
1301
1302 .. index:: 
1303         pair: Stdlib 関数; SystemSilent() 関数
1304
1305 SystemSilent() 関数
1306 ===================
1307
1308 SystemSilent() 関数は実行結果を表示せずにシステムコマンドを実行します。
1309
1310 文法:
1311
1312 .. code-block:: ring
1313
1314         SystemSilent(cCommand)
1315
1316 .. index:: 
1317         pair: Stdlib 関数; OSCreateOpenFolder() 関数
1318
1319 OSCreateOpenFolder() 関数
1320 =========================
1321
1322 フォルダの作成後に、現在のフォルダを作成したフォルダへ変更します。
1323
1324 文法:
1325
1326 .. code-block:: ring
1327
1328         OSCreateOpenFolder(cCommand)
1329
1330
1331 .. index:: 
1332         pair: Stdlib 関数; OSCopyFolder() 関数
1333
1334 OSCopyFolder() 関数
1335 ===================
1336
1337 現在のフォルダへフォルダをコピーします。
1338
1339 引数 : 親フォルダ (cParentFolder) のパス、およびコピー先のフォルダ名 (cFolderName)
1340
1341 文法:
1342
1343 .. code-block:: ring
1344
1345         OSCopyFolder(cParentFolder,cFolderName)
1346
1347 用例:
1348
1349 現在のフォルダへ b:\\ring\\ringlibs\\stdlib フォルダをコピーするには
1350
1351 .. code-block:: ring
1352
1353         OSCopyFolder("b:\ring\ringlibs\","stdlib")
1354
1355
1356 .. index:: 
1357         pair: Stdlib 関数; OSDeleteFolder() 関数
1358
1359 OSDeleteFolder() 関数
1360 =====================
1361
1362 現在のディレクトリにあるフォルダを削除します。
1363
1364 文法:
1365
1366 .. code-block:: ring
1367
1368         OSDeleteFolder(cFolderName)
1369
1370 .. index:: 
1371         pair: Stdlib 関数; OSCopyFile() 関数
1372
1373 OSCopyFile() 関数
1374 =================
1375
1376 現在のディレクトリへファイルをコピーします。
1377
1378 文法:
1379
1380 .. code-block:: ring
1381
1382         OSCopyFile(cFileName)
1383
1384 .. index:: 
1385         pair: Stdlib 関数; OSDeleteFile() 関数
1386
1387 OSDeleteFile() 関数
1388 ===================
1389
1390 ファイルを削除します。
1391
1392 文法:
1393
1394 .. code-block:: ring
1395
1396         OSDeleteFile(cFileName)
1397
1398 .. index:: 
1399         pair: Stdlib 関数; OSRenameFile() 関数
1400
1401 OSRenameFile() 関数
1402 ===================
1403
1404 ファイル名を変更します。
1405
1406 文法:
1407
1408 .. code-block:: ring
1409
1410         OSRenameFile(cOldFileName,cNewFileName)
1411
1412
1413 .. index:: 
1414         pair: Stdlib 関数; List2Code() 関数
1415
1416 List2Code() 関数
1417 ================
1418
1419 この関数は Ring リストを実行中に Ring ソースコードへ変換することでソースファイルを保存できるようにします。
1420
1421 リストは文字列、数値または部分リストを有しています。
1422
1423 用例:
1424
1425 .. code-block:: ring
1426
1427         load "stdlibcore.ring"
1428         aList = 1:10
1429         ? list2Code(aList)
1430
1431 実行結果:
1432
1433 .. code-block:: ring
1434
1435         [
1436                 1,2,3,4,5,6,7,8,9,10
1437         ]
1438
1439
1440 .. index:: 
1441         pair: Stdlib 関数; Str2ASCIIList() 関数
1442
1443 Str2ASCIIList() 関数
1444 ====================
1445
1446 各項目が1バイト ASCII コードとなる文字列表現のバイト文字列を数値リストへ変換します。
1447
1448 文法:
1449
1450 .. code-block:: ring
1451
1452         Str2ASCIIList(文字列) ---> 数値リスト
1453
1454 .. index:: 
1455         pair: Stdlib 関数; ASCIIList2Str() 関数
1456
1457 ASCIIList2Str() 関数
1458 ====================
1459
1460 各項目が1バイト ASCII コード表現となる数値リストをバイト文字列へ変換します。
1461
1462 文法:
1463
1464 .. code-block:: ring
1465
1466         ASCIIList2Str(数値リスト) ---> 文字列
1467
1468
1469 用例:
1470
1471 .. code-block:: ring
1472
1473         load "stdlibcore.ring"
1474
1475         cStr = "MmMm"
1476
1477         aList = Str2ASCIILIST(cStr)
1478         ? aList 
1479
1480         cStr2 = ASCIIList2Str(aList)
1481         ? cStr2
1482         ? len(cStr2)
1483
1484 実行結果:
1485
1486 .. code-block:: none
1487
1488         77
1489         109
1490         77
1491         109
1492
1493         MmMm
1494         4
1495
1496
1497 .. index:: 
1498         pair: Stdlib 関数; IsListContainsItems() 関数
1499
1500 IsListContainsItems() 関数
1501 ==========================
1502
1503 文法:
1504
1505 .. code-block:: ring
1506
1507         IsListContainsItems(aParent,aChild) ----> True/False
1508
1509 用例:
1510
1511 .. code-block:: ring
1512
1513         load "stdlibcore.ring"
1514         aList1 = "a":"z"
1515         aList2 = [:h,:l,:p,:u]
1516         ? IsListContainsItems(aList1,aList2)
1517
1518 .. index:: 
1519         pair: Stdlib 関数; IsBetween() 関数
1520
1521 IsBetween() 関数
1522 ================
1523
1524 文法:
1525
1526 .. code-block:: ring
1527
1528         IsBetween(nNumber,nMin,nMax) ----> True/False
1529
1530 用例:
1531
1532 .. code-block:: ring
1533
1534         load "stdlibcore.ring"
1535         ? isBetween(1,3,4)
1536         ? isBetween(1,-3,4)
1537         ? isBetween(4,1,6)
1538         ? isBetween(4,3,4)
1539
1540 .. index:: 
1541         pair: Stdlib 関数; TimeInfo() 関数
1542
1543 TimeInfo() 関数
1544 ===============
1545
1546 文法:
1547
1548 .. code-block:: ring
1549
1550         TimeInfo(cInformation) ----> 文字列
1551
1552 cInformation の値はこのようになります。
1553
1554 .. code-block:: ring
1555
1556         :time 
1557         :hour_24
1558         :hour_12
1559         :minutes
1560         :seconds
1561         :date 
1562         :day_long
1563         :day_short
1564         :month
1565         :year
1566
1567 用例:
1568
1569 .. code-block:: ring
1570
1571         load "stdlibcore.ring"
1572         ? timeInfo(:date)
1573         ? timeInfo(:time)
1574         ? timeInfo(:hour_12)