[Unity] Slider 값 .CSV 형태로 저장하기

2024. 10. 17. 11:45·HCI/Graphics
728x90
반응형

 

각 페이지의 슬라이더 값을 받아오고 Submit 버튼을 누르면 엑셀 파일에 날짜, 값 등이 저장되는 과정입니다.

 

슬라이더 화면

 

 

종료 화면

이런 식으로 슬라이더에 입력된 값을 저장해보겠습니당

 

1. 게임 오브젝트 SliderValueManager 생성

 

 

2. SliderValueMander.cs

using System;
using System.IO;
using UnityEngine;
using UnityEngine.UI;

public class SliderValueManager : MonoBehaviour
{
    public Slider page0Slider;  // Page 0 슬라이더
    public Slider page1Slider;  // Page 1 슬라이더
    public Slider page2Slider;  // Page 2 슬라이더

    public Button buttonSubmit;  // 제출 버튼

    private string csvFilePath;
    private int entryIndex = 1;  // 저장할 때 사용할 인덱스

    private void Start()
    {
        // CSV 파일 경로 설정 (프로젝트 경로)
        csvFilePath = Application.dataPath + "/SliderValues.csv";

        // 버튼 클릭 이벤트 설정
        buttonSubmit.onClick.AddListener(AppendSliderValuesToCSV);

        // 파일이 없으면 헤더 추가
        if (!File.Exists(csvFilePath))
        {
            using (var writer = new StreamWriter(csvFilePath))
            {
                writer.WriteLine("Index,Date,Time,Page0,Page1,Page2");
            }
        }
    }

    // 슬라이더 값과 날짜, 시간 CSV에 추가
    private void AppendSliderValuesToCSV()
    {
        // 현재 날짜와 시간
        string currentDate = DateTime.Now.ToString("yyyy-MM-dd");
        string currentTime = DateTime.Now.ToString("HH:mm:ss");

        // CSV에 새로운 행 추가
        using (var writer = new StreamWriter(csvFilePath, true))
        {
            writer.WriteLine($"{entryIndex},{currentDate},{currentTime},{page0Slider.value},{page1Slider.value},{page2Slider.value}");
        }

        entryIndex++;  // 인덱스 증가
        Debug.Log("CSV 파일에 새로운 슬라이더 값이 저장되었습니다.");
    }
}

 

3. Insepector에 적용

각 페이지에 해당하는 슬라이더와, Button Submit을 통해 엑셀에 값을 저장해줄 버튼을 넣어줍시다.

 

그럼 끝입니다.

 

각 슬라이더에 값을 넣고 마지막 페이지에 와서 Submit 버튼을 눌러주면

이렇게 각각 슬라이더 값을 적용한 뒤, Submit 버튼을 누르면 

 

Assets 파일 안에 아래와 같이 저장이 됩니다.

 

끝!

 

이렇게해서 데이터를 잘 저장해보아요 ^_^

 

 

728x90
반응형

'HCI > Graphics' 카테고리의 다른 글

[Unity] 3D 프로젝트로 AR 구현  (0) 2024.11.04
[Unity] Meta Quest 3 Qculus 연결하기  (1) 2024.10.29
[Unity] bHaptics 슬라이더로 강도(intensity) 조절하기  (1) 2024.10.07
[Unity - Arduino] 유니티 - 아두이노간 Serial Port 통신 구현하기  (0) 2024.09.27
[Unity - ThermoREAL Project] bHaptics Unity 연결하기  (1) 2024.09.24
'HCI/Graphics' 카테고리의 다른 글
  • [Unity] 3D 프로젝트로 AR 구현
  • [Unity] Meta Quest 3 Qculus 연결하기
  • [Unity] bHaptics 슬라이더로 강도(intensity) 조절하기
  • [Unity - Arduino] 유니티 - 아두이노간 Serial Port 통신 구현하기
sillon
sillon
꾸준해지려고 합니다..
    반응형
  • sillon
    sillon coding
    sillon
  • 전체
    오늘
    어제
    • menu (614)
      • notice (2)
      • python (68)
        • 자료구조 & 알고리즘 (23)
        • 라이브러리 (19)
        • 기초 (8)
        • 자동화 (14)
        • 보안 (1)
      • coding test - python (301)
        • Programmers (166)
        • 백준 (76)
        • Code Tree (22)
        • 기본기 문제 (37)
      • coding test - C++ (5)
        • Programmers (4)
        • 백준 (1)
        • 기본기문제 (0)
      • 공부정리 (5)
        • 신호처리 시스템 (0)
        • Deep learnig & Machine lear.. (41)
        • Data Science (18)
        • Computer Vision (17)
        • NLP (40)
        • Dacon (2)
        • 모두를 위한 딥러닝 (강의 정리) (4)
        • 모두의 딥러닝 (교재 정리) (9)
        • 통계 (2)
      • HCI (23)
        • Haptics (7)
        • Graphics (11)
        • Arduino (4)
      • Project (21)
        • Web Project (1)
        • App Project (1)
        • Paper Project (1)
        • 캡스톤디자인2 (17)
        • etc (1)
      • OS (10)
        • Ubuntu (9)
        • Rasberry pi (1)
      • App & Web (9)
        • Android (7)
        • javascript (2)
      • C++ (5)
        • 기초 (5)
      • Cloud & SERVER (8)
        • Git (2)
        • Docker (1)
        • DB (4)
      • Paper (7)
        • NLP Paper review (6)
      • 데이터 분석 (0)
        • GIS (0)
      • daily (2)
        • 대학원 준비 (0)
      • 영어공부 (6)
        • job interview (2)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    programmers
    소수
    Python
    백준
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
sillon
[Unity] Slider 값 .CSV 형태로 저장하기
상단으로

티스토리툴바